SlideShare une entreprise Scribd logo
1  sur  42
<Insert Picture Here>




          Java OS-less: JRockit Virtual Edition
          Nino Guarnacci
          Principal Sales Consultant




sabato 5 marzo 2011
<Insert Picture Here>


          What is
          Virtualization?




sabato 5 marzo 2011
Why virtualization?


       • Do more with less
            – Utilization
            – Improve IT staff productivity
            – Maximize capacity
       • Reduce costs (Improve TCO!)
            – Faster product2market
       • Migrate risks
            – Easier to try out new ideas
       • Accelerating business growth
            – Quickly respond to changed business needs




sabato 5 marzo 2011
What is Virtualization?


       • A process to abstracting hardware resources
            – CPU, memory, hard disk etc
       • Enables multiple OS and applications to share hardware

       • What is a Virtual Machine?
            – An isolated partition that runs an application stack
            – Each Virtual Machine acts as running on their own real computer




sabato 5 marzo 2011
What is Virtualization?




sabato 5 marzo 2011
What is Virtualization?



               Traditional deployment   With Virtualization


                                        App    App     App
                                         App    App     App
                  App   App    App      App    App     App



                                        App    App    App
                                         App    App    App
                 App    App   App       App    App    App



                                        App    App    App
                                         App    App    App
                  App   App   App       App    App    App




sabato 5 marzo 2011
What is Paravirtualization?


          • When the guest OS is aware of the
            virtualization
              – Uses a special “API” the guest OS
              – Simplifies hypervisor and OS implementation
              – Theoretically higher performance




sabato 5 marzo 2011
<Insert Picture Here>


          What is a
          Hypervisor?




sabato 5 marzo 2011
What is a Hypervisor


          • Software that virtualizes the hardware (and
            resources)
          • Makes it possible to run multiple OS instances (guest
            OSs) on the same physical server




sabato 5 marzo 2011
How it works (simplified overview)


          • The guest OS believes that it’s running on real
            hardware
          • All devices are “faked”
          • All operations that are “dangerous” are trapped by the
            hypervisor and emulated
              – Device interaction
              – Memory mapping


          • The hypervisor provides an idealized view of a
            machine




sabato 5 marzo 2011
<Insert Picture Here>


          What is an
          Appliance?




sabato 5 marzo 2011
What is an Appliance?


          • A pre-configured system image
              – Configured for a specific solution
              – Includes all required functions
          • Can run directly on a virtualization platform




sabato 5 marzo 2011
What is an Appliance?




sabato 5 marzo 2011
<Insert Picture Here>


          What is
          Oracle JRockit Virtual Edition?




sabato 5 marzo 2011
Java is the Most Popular Language in the World




sabato 5 marzo 2011
Product Definition: JRockit JVM



       • JRockit is a JVM for enterprise wide usage
            • 100% Java SE compatible
       • JRockit is the High Performance JVM
            • Maximizes throughput
            • Optimized for server-side applications
            • Full support of Oracle product stack
               • Optimized for Oracle products like WebLogic Server
               • Simpler and faster support
       • Included free of charge in many Oracle Java based
          products




sabato 5 marzo 2011
JRockit Real Time Benefits


       • Guaranteed millisecond application response times
            • Restrict GC pause times based on application SLA
       • Lower development & maintenance costs
            • Replace native code with Java
            • Avoid costly JVM tuning
       • Improve application performance & latency
            • Performance on par with standard JRockit JVM!
            • Use tools to identify & fix latency issues
       • Expand use of Java to new areas
            • Financial front office: trading, pricing, foreign exchange
            • Telco core network: billing, IP telephony etc
            • RFID, sensor networks, command & control, manufacturing
              etc




sabato 5 marzo 2011
Managing Latency

            Traditional Java
                                                    JRockit Real Time




        During Low Load: GC spikes
        and occasional timeouts visible




                                            JRRT Makes garbage collection deterministic.
                                                Allowing for the guarantee of SLAs.


     During High Load: GC pauses can
    result in unacceptable response times



sabato 5 marzo 2011
WLRT Deterministic GC - GC Pause Time
                                                   -Xgcprio:deterministic
                                                   -XpauseTarget=100ms
  (miliseconds)
  Pause time




                      Elapsed time (seconds)




sabato 5 marzo 2011
JRockit Throughput GC - GC Pause Time

                                                   -Xgcprio:throughput
  (miliseconds)
  Pause time




                      Elapsed time (seconds)




sabato 5 marzo 2011
JRockit Runtime Analyzer

      • Tab that shows thread local area
        (TLA) information.
      • Ratio between the number of
        bytes allocated by small and
        large objects in the application.
      • Possible to see how much
        memory each thread has
        allocated during the recording.
      • Occupied Heap, that shows the
        amount of memory after a
        garbage collection, has been
        added to GC Event Tab.
      • Tab for code related information
        that shows which packages and
        classes the application spent the
        most time executing.
      • The packages showed are the
        hottest packages
      • ……




sabato 5 marzo 2011
Traditional Java Virtualization

                                  Application Server

                                        JVM

                                         OS

                                     Hypervisor

                                      Hardware



      •   Triple virtualization
      •   Redundant activities in the lower layers
      •   Uncoordinated activities between upper & lower layers
      •   Opportunity to specialize to:
           – Reduce memory footprint
           – Improve performance
           – Improve latency
           – Improve security



sabato 5 marzo 2011
Traditional Java Virtualization

                                         Application Server

                                               JVM

                 Triple Virtualization          OS

                                            Hypervisor

                                             Hardware



      •   Triple virtualization
      •   Redundant activities in the lower layers
      •   Uncoordinated activities between upper & lower layers
      •   Opportunity to specialize to:
           – Reduce memory footprint
           – Improve performance
           – Improve latency
           – Improve security



sabato 5 marzo 2011
Traditional Java Virtualization

                                         Application Server

                                               JVM

                 Triple Virtualization          OS            General purpose OS

                                            Hypervisor

                                             Hardware



      •   Triple virtualization
      •   Redundant activities in the lower layers
      •   Uncoordinated activities between upper & lower layers
      •   Opportunity to specialize to:
           – Reduce memory footprint
           – Improve performance
           – Improve latency
           – Improve security



sabato 5 marzo 2011
Long Term Goal


          • Efficiently execute Java in a virtualized environment
          • Take advantage of and work closely together with the
            hypervisor
          • Simplify management
          • Reduce TCO (Total Cost of Ownership)
          • Improve security




sabato 5 marzo 2011
Oracle JRockit Virtual Edition
          Optimized Java Infrastructure



                                           Traditional Virtualized Java
                                                 Execution Stack

                                                 WebLogic Server



                                                Java Virtual Machine



                                              Guest Operating System



                                                    Hypervisor



                                                Bare Metal Hardware




sabato 5 marzo 2011
Oracle JRockit Virtual Edition
          Optimized Java Infrastructure


       • Runs natively on hypervisor
                                                 Optimized Java
            • More efficient use of hardware     Execution Stack
              resources
            • Higher density
            • Better performance                 WebLogic Server

       • Reduced operational cost
            • Simpler patching                  Java Virtual Machine
                                               JRockit Virtual Edition

            • Improved security
                                                    Oracle VM
                                                    Hypervisor
       • Custom Java appliances
            • Building blocks for larger       Bare Metal Hardware
              assemblies
            • Simple deployment



sabato 5 marzo 2011
JRVE is....



                                       Java App
                         JRVE
                        Services
   Java Directly                                  Appliance
   on Hypervisor              JRockit JVM           Tool


                              JRVE Kernel
                                                  JRVE Tools
                                                  (Java tools)

        The OS functionality a JVM needs




sabato 5 marzo 2011
JRockit Virtual Edition
         How does it work?
                                           JRockit –VE OS Layer

                                           TCP/IP      File System


                                          Scheduler       H/W




         JRockit Virtual Edition       • TCP/IP: Network communication
                                       • Scheduler: Runs Java threads. Single
             JRockit –VE           f     process
                                       • File System: Local [virtual] disk
                 Oracle VM
                                       • HW: Hardware device interaction. Network
                                         card, virtual screen, etc.
             Bare Metal Hardware




sabato 5 marzo 2011
JRockitVE Kernel Technology Overview
          From OS process to Java Service on Hypervisor

          *nix-like emulation layer for Java
                                                               Java Application
               • Not Linux-based
               • Can run JRockit JVM for Linux
               • Networking, thread-scheduling,                   JRockit JVM            Local
                                                                                        Storage
                memory management, file
                storage                                        JRockitVE Kernel
               • NOT derived from Linux                           Hypervisor
                                                               Physical Machine
          Not an OS in the normal sense
               • Only a single JVM
               • No paging
                                                  Networking
               • No real device drivers



                                                                                  Remote Storage




sabato 5 marzo 2011
Shorter Path length for I/O
                                                        Oracle VM
     Normal OS




                                                                           I/O time in
                                                                           normal OS
     JRVE




                                                                         I/O time in
                                                                         JRVE




                 • Avoid transition cost from user mode to kernel mode




sabato 5 marzo 2011
Security


          • Very few entry points
              – Normal OS installations end up with a lot of services enabled
              – JRVE does not implement more than is absolutely needed
              – Extremely small configuration
          • Less entry points – less threats




sabato 5 marzo 2011
Manage: WebLogic Server with JRockit Virtual Edition



        (Approximate                          WebLogic with
                         Linux       JeOS
        Numbers)                               JRockit VE
       Config. Files      1000        200           1
       Commands           3000        500          10
       Command Params.   50,000      10,000        100
       Admin Tools        500         200           1
       Boot Time (s)       50         30            1
       Size (MB)          1000        200           2
       Reduction Ratio
       from Linux          1          ~2          ~300




sabato 5 marzo 2011
Performance: WebLogic Server with JRockit Virtual
          Edition


              Performance Issue      Standard   WebLogic with
                                     JVM / OS   JRockit Virtual
                                                   Edition
          Java Aware Scheduling?       No            Yes
          Kernel Mode Transitions?    Many         Very few
          Shorter Switching Times?     No            Yes
          Optimize size of Heap        No            Yes
          Shorter I/O Path?            No            Yes




sabato 5 marzo 2011
Off-line Appliance Management


                                                                       Full stack externalized configuration.
                                                                       Can be managed off-line!

                                                   WLS
        Configuration is not externalized.                                    Java Application
        Cannot be managed off-line!
                                                JRockit JVM
                                                                                  JRockitVE
                                                    OS
                                                                                Virtual Server
                                               Virtual Server




                            In a virtual environment most servers are off-line.
                            Traditional OS’s have their configuration deeply embedded and can therefore
                             not be managed off-line.
                            Have full stack externalized configuration, and it can be fully managed off-line.




                                                                                   *manage = reconfigure, patch, modify




sabato 5 marzo 2011
Java OS-less: JRockit Virtual Edition
                 nino.guarnacci@oracle.com




sabato 5 marzo 2011
sabato 5 marzo 2011
Java OS-less: JRockit Virtual Edition
                 nino.guarnacci@oracle.com




sabato 5 marzo 2011
sabato 5 marzo 2011
Java OS-less: JRockit Virtual Edition
                 nino.guarnacci@oracle.com




sabato 5 marzo 2011
sabato 5 marzo 2011
Java OS-less: JRockit Virtual Edition
                 nino.guarnacci@oracle.com




sabato 5 marzo 2011

Contenu connexe

Plus de Codemotion

Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 - Codemotion
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Codemotion
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Codemotion
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Codemotion
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Codemotion
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Codemotion
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Codemotion
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Codemotion
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...Codemotion
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Codemotion
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Codemotion
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Codemotion
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Codemotion
 
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...Codemotion
 
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019Codemotion
 
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019Codemotion
 
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019Codemotion
 
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019Codemotion
 
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019Codemotion
 
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019Codemotion
 

Plus de Codemotion (20)

Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
 
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...
Mike Kotsur - What can philosophy teach us about programming - Codemotion Ams...
 
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019
Mete Atamel - Serverless with Knative - Codemotion Amsterdam 2019
 
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019
Rahul Shetty - Corporate relocation prediction - Codemotion Amsterdam 2019
 
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019
Mario Viviani - Designing apps for fire TV - Codemotion Amsterdam 2019
 
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019
Ilona Demidenko - Conversational Sign Up - Codemotion Amsterdam 2019
 
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019
Katie Koschland - Ready, steady, crash - Codemotion Amsterdam 2019
 
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019
Matteo Antony Mistretta - React, the Inglorious way - Codemotion Amsterdam 2019
 

Dernier

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Dernier (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Java OS-less: JRockit Virtual Edition

  • 1. <Insert Picture Here> Java OS-less: JRockit Virtual Edition Nino Guarnacci Principal Sales Consultant sabato 5 marzo 2011
  • 2. <Insert Picture Here> What is Virtualization? sabato 5 marzo 2011
  • 3. Why virtualization? • Do more with less – Utilization – Improve IT staff productivity – Maximize capacity • Reduce costs (Improve TCO!) – Faster product2market • Migrate risks – Easier to try out new ideas • Accelerating business growth – Quickly respond to changed business needs sabato 5 marzo 2011
  • 4. What is Virtualization? • A process to abstracting hardware resources – CPU, memory, hard disk etc • Enables multiple OS and applications to share hardware • What is a Virtual Machine? – An isolated partition that runs an application stack – Each Virtual Machine acts as running on their own real computer sabato 5 marzo 2011
  • 6. What is Virtualization? Traditional deployment With Virtualization App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App App sabato 5 marzo 2011
  • 7. What is Paravirtualization? • When the guest OS is aware of the virtualization – Uses a special “API” the guest OS – Simplifies hypervisor and OS implementation – Theoretically higher performance sabato 5 marzo 2011
  • 8. <Insert Picture Here> What is a Hypervisor? sabato 5 marzo 2011
  • 9. What is a Hypervisor • Software that virtualizes the hardware (and resources) • Makes it possible to run multiple OS instances (guest OSs) on the same physical server sabato 5 marzo 2011
  • 10. How it works (simplified overview) • The guest OS believes that it’s running on real hardware • All devices are “faked” • All operations that are “dangerous” are trapped by the hypervisor and emulated – Device interaction – Memory mapping • The hypervisor provides an idealized view of a machine sabato 5 marzo 2011
  • 11. <Insert Picture Here> What is an Appliance? sabato 5 marzo 2011
  • 12. What is an Appliance? • A pre-configured system image – Configured for a specific solution – Includes all required functions • Can run directly on a virtualization platform sabato 5 marzo 2011
  • 13. What is an Appliance? sabato 5 marzo 2011
  • 14. <Insert Picture Here> What is Oracle JRockit Virtual Edition? sabato 5 marzo 2011
  • 15. Java is the Most Popular Language in the World sabato 5 marzo 2011
  • 16. Product Definition: JRockit JVM • JRockit is a JVM for enterprise wide usage • 100% Java SE compatible • JRockit is the High Performance JVM • Maximizes throughput • Optimized for server-side applications • Full support of Oracle product stack • Optimized for Oracle products like WebLogic Server • Simpler and faster support • Included free of charge in many Oracle Java based products sabato 5 marzo 2011
  • 17. JRockit Real Time Benefits • Guaranteed millisecond application response times • Restrict GC pause times based on application SLA • Lower development & maintenance costs • Replace native code with Java • Avoid costly JVM tuning • Improve application performance & latency • Performance on par with standard JRockit JVM! • Use tools to identify & fix latency issues • Expand use of Java to new areas • Financial front office: trading, pricing, foreign exchange • Telco core network: billing, IP telephony etc • RFID, sensor networks, command & control, manufacturing etc sabato 5 marzo 2011
  • 18. Managing Latency Traditional Java JRockit Real Time During Low Load: GC spikes and occasional timeouts visible JRRT Makes garbage collection deterministic. Allowing for the guarantee of SLAs. During High Load: GC pauses can result in unacceptable response times sabato 5 marzo 2011
  • 19. WLRT Deterministic GC - GC Pause Time -Xgcprio:deterministic -XpauseTarget=100ms (miliseconds) Pause time Elapsed time (seconds) sabato 5 marzo 2011
  • 20. JRockit Throughput GC - GC Pause Time -Xgcprio:throughput (miliseconds) Pause time Elapsed time (seconds) sabato 5 marzo 2011
  • 21. JRockit Runtime Analyzer • Tab that shows thread local area (TLA) information. • Ratio between the number of bytes allocated by small and large objects in the application. • Possible to see how much memory each thread has allocated during the recording. • Occupied Heap, that shows the amount of memory after a garbage collection, has been added to GC Event Tab. • Tab for code related information that shows which packages and classes the application spent the most time executing. • The packages showed are the hottest packages • …… sabato 5 marzo 2011
  • 22. Traditional Java Virtualization Application Server JVM OS Hypervisor Hardware • Triple virtualization • Redundant activities in the lower layers • Uncoordinated activities between upper & lower layers • Opportunity to specialize to: – Reduce memory footprint – Improve performance – Improve latency – Improve security sabato 5 marzo 2011
  • 23. Traditional Java Virtualization Application Server JVM Triple Virtualization OS Hypervisor Hardware • Triple virtualization • Redundant activities in the lower layers • Uncoordinated activities between upper & lower layers • Opportunity to specialize to: – Reduce memory footprint – Improve performance – Improve latency – Improve security sabato 5 marzo 2011
  • 24. Traditional Java Virtualization Application Server JVM Triple Virtualization OS General purpose OS Hypervisor Hardware • Triple virtualization • Redundant activities in the lower layers • Uncoordinated activities between upper & lower layers • Opportunity to specialize to: – Reduce memory footprint – Improve performance – Improve latency – Improve security sabato 5 marzo 2011
  • 25. Long Term Goal • Efficiently execute Java in a virtualized environment • Take advantage of and work closely together with the hypervisor • Simplify management • Reduce TCO (Total Cost of Ownership) • Improve security sabato 5 marzo 2011
  • 26. Oracle JRockit Virtual Edition Optimized Java Infrastructure Traditional Virtualized Java Execution Stack WebLogic Server Java Virtual Machine Guest Operating System Hypervisor Bare Metal Hardware sabato 5 marzo 2011
  • 27. Oracle JRockit Virtual Edition Optimized Java Infrastructure • Runs natively on hypervisor Optimized Java • More efficient use of hardware Execution Stack resources • Higher density • Better performance WebLogic Server • Reduced operational cost • Simpler patching Java Virtual Machine JRockit Virtual Edition • Improved security Oracle VM Hypervisor • Custom Java appliances • Building blocks for larger Bare Metal Hardware assemblies • Simple deployment sabato 5 marzo 2011
  • 28. JRVE is.... Java App JRVE Services Java Directly Appliance on Hypervisor JRockit JVM Tool JRVE Kernel JRVE Tools (Java tools) The OS functionality a JVM needs sabato 5 marzo 2011
  • 29. JRockit Virtual Edition How does it work? JRockit –VE OS Layer TCP/IP File System Scheduler H/W JRockit Virtual Edition • TCP/IP: Network communication • Scheduler: Runs Java threads. Single JRockit –VE f process • File System: Local [virtual] disk Oracle VM • HW: Hardware device interaction. Network card, virtual screen, etc. Bare Metal Hardware sabato 5 marzo 2011
  • 30. JRockitVE Kernel Technology Overview From OS process to Java Service on Hypervisor *nix-like emulation layer for Java Java Application • Not Linux-based • Can run JRockit JVM for Linux • Networking, thread-scheduling, JRockit JVM Local Storage memory management, file storage JRockitVE Kernel • NOT derived from Linux Hypervisor Physical Machine Not an OS in the normal sense • Only a single JVM • No paging Networking • No real device drivers Remote Storage sabato 5 marzo 2011
  • 31. Shorter Path length for I/O Oracle VM Normal OS I/O time in normal OS JRVE I/O time in JRVE • Avoid transition cost from user mode to kernel mode sabato 5 marzo 2011
  • 32. Security • Very few entry points – Normal OS installations end up with a lot of services enabled – JRVE does not implement more than is absolutely needed – Extremely small configuration • Less entry points – less threats sabato 5 marzo 2011
  • 33. Manage: WebLogic Server with JRockit Virtual Edition (Approximate WebLogic with Linux JeOS Numbers) JRockit VE Config. Files 1000 200 1 Commands 3000 500 10 Command Params. 50,000 10,000 100 Admin Tools 500 200 1 Boot Time (s) 50 30 1 Size (MB) 1000 200 2 Reduction Ratio from Linux 1 ~2 ~300 sabato 5 marzo 2011
  • 34. Performance: WebLogic Server with JRockit Virtual Edition Performance Issue Standard WebLogic with JVM / OS JRockit Virtual Edition Java Aware Scheduling? No Yes Kernel Mode Transitions? Many Very few Shorter Switching Times? No Yes Optimize size of Heap No Yes Shorter I/O Path? No Yes sabato 5 marzo 2011
  • 35. Off-line Appliance Management Full stack externalized configuration. Can be managed off-line! WLS Configuration is not externalized. Java Application Cannot be managed off-line! JRockit JVM JRockitVE OS Virtual Server Virtual Server In a virtual environment most servers are off-line. Traditional OS’s have their configuration deeply embedded and can therefore not be managed off-line. Have full stack externalized configuration, and it can be fully managed off-line. *manage = reconfigure, patch, modify sabato 5 marzo 2011
  • 36. Java OS-less: JRockit Virtual Edition nino.guarnacci@oracle.com sabato 5 marzo 2011
  • 38. Java OS-less: JRockit Virtual Edition nino.guarnacci@oracle.com sabato 5 marzo 2011
  • 40. Java OS-less: JRockit Virtual Edition nino.guarnacci@oracle.com sabato 5 marzo 2011
  • 42. Java OS-less: JRockit Virtual Edition nino.guarnacci@oracle.com sabato 5 marzo 2011