azul zulu on azure overview -- opentech cee workshop, warsaw, poland
DESCRIPTION
Azul Zulu on Azure. Overview with intro background on Java and OpenJDK for non-Java audience. Presented via webinar to Microsoft OpenTech Central/Eastern Europe Workshop, Warsaw, Poland. November 2013.TRANSCRIPT
©2013 Azul Systems, Inc.
Zulu by AzulOpenJDK for Azure
surely a tongue-twister in any spoken language
Matt Schuetze, Director of Product Management Azul Systems
A presentation to Azure CEE – Open Source in the CloudNovember 27, 2013
©2013 Azul Systems, Inc.
This Talk’s Purpose / Goals
This talk is focused on Java for Azure
This is not a “how to write a Java program” talk
This is a talk about how Java fits into the Azure landscape and why Zulu by Azul plays a big role.
Purpose: Once you understand where Java fits, you’ll know just enough to be dangerous...
The “Azul makes the world’s greatest JVMs” stuff will only come at the end, I promise...
©2013 Azul Systems, Inc.
About Azul SystemsWe deal with Java performance issues on a daily basis
Our solutions focus on consistent response time under load
We enable practical, full use of hardware resources
As a result, we often help characterize problemsIn many/most cases, it’s not the database, app, or network - it’s the JVM, or the system under it…
GC Pauses, OS or Virtualization “hiccups”, swapping, etc.
We use and provide simple tools to help discover what’s going on in a JVM and the underlying platform
Focus on measuring JVM/Platform behavior with your app
©2013 Azul Systems, Inc.
About AzulWe make scalable Virtual Machines
Have built “whatever it takes to get job done” since 2002
3 generations of custom SMP Multi-core HW (Vega)
Now Pure software for commodity x86 (Zing)
“Industry firsts” in Garbage collection, elastic memory, Java virtualization, memory scale
Vega
C4
©2013 Azul Systems, Inc.
High level agendaJava history, evolution, and current picture of industry
Zoom into the Java Virtual Machine, the architectural heart of Java
Zoom out, seeing where the JVM fits in the greater application universe
Focus back in on Azure and pick apart why Java on Azure isn’t so weird as it initially sounds.
Introduce and describe Zulu, a new OpenJDK distribution offered by Azul Systems
©2013 Azul Systems, Inc.
Azul’s Evolution in Java ContextYear Azul Java Milestone
1996 Sun ships Java 1.0. Codename “Oak”.
1999 Sun builds Java 1.2 w/ Swing and Browser plugin. First use of HotSpot as trade name of JVM. So huge Marketing names it “Java 2”, split as J2SE, J2EE, and J2ME
2002 Founded J2EE called best platform for web. J2SE 4.x solid for server apps, 1st 64-bit VM. BEA acquires Appeal, the JRockit VM creators.
2005 Vega J2 Version 5, Codename “Tiger”, is huge. BEA WebLogic 8.1 hot. “IBM J9” VM replaces “IBM Classic” VM under WebSphere 6.1
2007 Oracle acquires BEA. JRockit VM kept intact over Oracle VM.
2010 Zing VE Oracle acquires Sun. Java and Sparc kept intact. JRockit pushed for specialty workloads only.
2011 Zing LX Oracle ships JSE 7. OpenJDK becomes base codeline for JSE7.0. IBM ships WAS 8.0 on J9 JDK6. Zing 5 released.
2013 Zing PE IBM ships WAS 8.5 and it can be configured to use J9 JDK7. OpenJDK 7 is released. IcedTea 6 is released. JRockit revived.
2013 Zulu on Azure
OpenJDK 8 is nearing developer preview now with 2014 Q2 release target. Source will be foundation of Oracle’s JSE 8.
©2013 Azul Systems, Inc.
Founded 2002
First hardware product (Vega): 2005
First virtualized software-only product (Zing): 2010
First fully native-mode software product (Zing 5): 2011
First bundled WebSphere solution (Zing PE): 2013
First free open source Zulu product for Windows Server: 2013
Azul’s Evolution Explained
©2013 Azul Systems, Inc.
Six Dimension of Java
Java Virtual Machine
Platforms
LifeCycle
©2013 Azul Systems, Inc.
Runtime Instance
Code Transformation
Java Virtual Machine
MachineAssembly01010110
*.java
*.class
Author Source
Compile toBytecode
Load LinkInitialize
JIT CompileExecuteMonitorReJIT
*.jar
Consume APIs
Code Transformation
©2013 Azul Systems, Inc.
Simplified Java Life CycleBusiness
RequirementsAs Inputs
Dev
QA
Prod
IDEs: Eclipse, NetBeans, IntelliJPlatforms: Desktop, LaptopTools: JUnit, Ant, Maven,Profilers, Debuggers, Emulators
Tools: JUnit, JMeter, Grinder,Platforms: Servers, MobileVirtualization
Tools: Profilers, JMX monitors,DeployersPlatforms: Servers, Mobile, Clusters, Cloud, Grids, Virtualization
Business provides team with requirements. Developers author Java source code on laptops, pull in 3rd party frameworks or APIs. Commit code to repository where builds compiled, JAR/WAR, and data components integrated, and QA testers validate full server application. Upon passing all tests, Ops staff push JARs to final server and client targets.
Working ApplicationsAs Outputs
©2013 Azul Systems, Inc.
Java Editions
Java Virtual Machine
Standard Edition
Micro Edition
EnterpriseEdition
JVM, JDK, APILanguage StandardRuntime Standard
Same LanguageCutdown APITailored JVM RuntimeTiny Footprint
Includes JSEStandard Services:JMS, JDBC, EJB,
Servlet, JNDI
©2013 Azul Systems, Inc.
Java VM Platforms
Java Virtual Machine
Platforms
Bytecode Ensures Architecture NeutralityChip Architectures
Intel x86Intel/AMD x64IBM PowerHP PA-RISCARMSparcItanium
Operating SystemsLinuxWindowsSolarisHPUXAIXzOSMac OS/XAndroid
Plus more… Plus more…
©2013 Azul Systems, Inc.
Active Java/JVM Vendors
Java Virtual Machine
Key Vendorsand their JVMs
+8 others on
Azul Systems, IBM, Red HatOracle
Arm Ltd., EclipseFoundation, HP,
Intel, Nokia, SAP,Software AG
JCP ExecutiveCommittee
Perm JCP EC member.Retains Brand, Trademarks andmany Copyrights
Oracle HotspotOracle JRockit
Azul ZingAzul ZuluIBM J9
Red Hat IcedTea
Google Dalvik
EC and JCK Licensees
©2013 Azul Systems, Inc.
Types of JVMs
Java Virtual Machine
JRockitAzul Zing
HotspotIBM J9
OpenJDKAzul ZuluIcedTea
Free, Open Source, GPL Semi-Free,
Closed Source,Restrictions
Commercial, ClosedSource,
Licensed
©2013 Azul Systems, Inc.
What to do with a Java workload when you are a Microsoft cloud worker?
Simple: Deploy Zulu on Azure
©2013 Azul Systems, Inc.
Zulu Deployment Targets*
Bare OSWindowsserver
VirtualizationVMWareHyperV
CloudAzure
Choice of Java 6, 7, and 8, each JSE compatibleChoice of 64 and 32 bit JVMs on applicable OSChoice of Deployment Model:
* 32 bit and Java 8 next up on roadmap
©2013 Azul Systems, Inc.
Zulu Release TimelineSun
JDK5Oracle JDK6
Open JDK 7
Iced Tea6
Oracle JDK7
Zulu 7
Open JDK 8
Oracle JDK 8
Open JDK6
Zulu 6 Zulu 8
Zulu 7.0Sept 2013
Zulu 7.1Oct 2013
Zulu 7.2Nov. 2013
Zulu 8Spring 2014
©2013 Azul Systems, Inc.
Azure Eclipse Workbench
Eclipse IDE/ Workbench
tailored for Java on Azure
©2013 Azul Systems, Inc.
Deploying Zulu
Create Azure VMDeploy a JDKSelect current Zulu
©2013 Azul Systems, Inc.
Zulu Product ComparisonAzulZulu
OracleHotSpot
Red HatIced Tea
Full HotSpot compatibility 4 4 4
Support for Azure 4 4 0
Support for Windows servers & Hyper-V
4 2 0
Browser plugins 0 4 0
Dedicated JVM customer support 4 4 0
Out-of-release-cycle Bug Fix Delivery 4 2 0
Company 100% focused on Java 4 1 0
JVM certification program for ISVs 4 4 1
Upgrade path to additional features (trade-up option)
4 1 0
Community participation (JCP EC) 4 4 4
©2013 Azul Systems, Inc.
Homework AssignmentDeploy a Windows Server VM on Azure. Select 2012.
Configure Azul Zulu as choice of JDK. Select 1.7u40.
Download DaCapo Benchmark Suite (jar file) into VM.
http://sourceforge.net/projects/dacapobench/files/
Run DaCapo test:java.exe -jar -Xmx1024m ./dacapo-9.12-bach.jar --iterations 20 --no-pre-iteration-gc tradebeans
©2013 Azul Systems, Inc.
ConclusionZulu gives Azure deployers a solid, dependable Java runtime.
Zulu gives Java developers a boost on Windows, leveraging OpenJDK, expanding alternatives.
Through Zulu and Zing, Azul gives application developers worldwide flexible, robust, and trusted Java server capability.
Consider Azul as defactor provider of server JVMs.
©2013 Azul Systems, Inc.
Q & AZulu by Azul: http://www.azulsystems.com/products/zulu
Microsoft OpenTech:http://msopentech.com search “zulu”
jHiccup:
http://www.azulsystems.com/downloads/jhiccup
For any follow-up, contact Matt:[email protected]