java update - bristol jug. part 2 - java ee / java in the cloud
TRANSCRIPT
Java$Update$$Part$1$-$Java$SE$/$Roadmap$Part%2%'%Java%EE%/%Java%in%the%Cloud%
Steve$Ellio6$Java$Technology$Lead$Oracle$UK$$$
$May$2016$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Safe$Harbor$Statement$
The$following$is$intended$to$outline$our$general$product$direcQon.$It$is$intended$for$informaQon$purposes$only,$and$may$not$be$incorporated$into$any$contract.$It$is$not$a$commitment$to$deliver$any$material,$code,$or$funcQonality,$and$should$not$be$relied$upon$in$making$purchasing$decisions.$The$development,$release,$and$Qming$of$any$features$or$funcQonality$described$for$Oracle’s$products$remains$at$the$sole$discreQon$of$Oracle.$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
From$Java$EE$$$$$Cloud,$Microservices$and$Beyond$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Marc%Fleury%creates%EJB'OSS%Later%renamed%to%JBOSS%and%JBoss%
2005$–$GlassFish$(Java$EE$5)$2007$–$GlassFish$2$2009$–$GlassFish$3$(Java$EE$6)$2013$–$GlassFish$4$(Java$EE$7)$$$2014$–$WildFly$8$(Java$EE$7)$2015$–$WildFly$9$2016$–$WildFly$10$$$2013$–$WebSphere$$$$$$$$$$$$$$Liberty$Profile$(Java$EE7)$$$2011$–$TomEE$(Java$EE$6w)$$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Java EE 7
Connector 1.7
Managed%Beans%1.0% EJB%3.2%
Servlet%3.1%
Eco-system
JSF%2.2% JAX-RS 2
JMS 2 JPA%2.1%
EL 3
JTA%1.2%
JSP%2.3%
Interceptors%1.2% CDI%1.1%Common%AnnotaIons%
1.2%
Updated Major Release
New
Concurrency Utilities
Batch Applications
Java API for JSON
Java API for WebSocket
Bean Validation 1.1
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Java EE 8 Community Survey
h6ps://java.net/downloads/javaee-spec/JavaEE8_Community_Survey_Results.pdf$
h6ps://blogs.oracle.com/ldemichiel/entry/results_from_the_java_ee$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Java EE 8 Themes
• HTML 5 / Web Tier Enhancements – JSON Binding, JSON-P enhancements, SSE, action-based MVC, HTTP/2
• Ease of Development / CDI alignment – CDI 2, EJB services outside EJB, security interceptors, EJB pruning
• Infrastructure for running in the Cloud – Java EE Management 2.0, Java SE Security 1.0
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Java%SpecificaIon%Request%JSR$366$–$Java$EE$8$Plaeorm$
JSR$369$–$Servlet$4.0$–$HTTP/2$$
JSR$365$–$CDI$2.0$–$(Red$Hat)$CDI$for$Java$SE,$modularity$&$events$
JSR$367$–$JSON-B$1.0$$–$JSON$Binding$for$Java$Objects$
JSR$371$–$MVC$1.0$–$Model$View$Controller,$AcQon-Based,$HTML$framework$
JSR$368$–$JMS$2.1$–$MDB$Improvements,$CDI$Managed$Bean$integraQon$
JSR$372$–$JSF$2.3$–$IntegraQon$with$WebSocket,$MVC,$CDI,$Java$8$DateTime$
JSR$374$–$JSON-P$1.1$–$Query$enhancements,$Java$SE$8$improvements$
JSR$375$–$Security$1.0$–$SimplificaQons,$Cloud$enhancements$
JSR$370$–$JAX-RS$2.1$–$NIO,$Server-Sent$Events,$ReacQve$
JSR$373$–$Management$2.0$–$REST$based$Management$$
Java$EE$Going$Forward$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
ApplicaQon$Development$Is$Changing$
11$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Rapid$Changes$Over$Past$Few$Years$
12$
Microservices%Apps$divided$into$many$small$pieces$
Distributed%CompuIng%Many$data$centers,$AZs,$regions,$etc$
Polyglot%Java$leads$but$use$of$others$increasing$
New%Technology%Docker,$Cloud,$DevOps,$etc$
Driven%by%increasing%business%needs%
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Microservices%• Minimal$FuncQon$
• Service$Discovery$• API-first$
3% • Polyglot$• Choreography$• Loose$Coupling$
DevOps%• Automated$Provisioning$
• Automated$Setup$• ConQnuous$IntegraQon$
1% • ConQnuous$Delivery$• Automated$TesQng$• Agile$• Culture$Change$
*%as%a%Service%• Consume$Infrastructure$and$
Sonware$as$a$Service$• Fault$Tolerant$by$DefiniQon$
2% • Auto-scaling$• Infinite$ElasQcity$
What$is$Cloud$NaQve?$A%new%style%of%architecture%
Distributed%CompuIng%• MulQ-master$
• Many$Data$Centers$• Many$Fault$Domains$
4% • Many$Regions$• Global$Server$Load$Balancing$• ReplicaQon$
13$Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
ConfidenQal$–$Oracle$Internal/Restricted/Highly$
Restricted$
15$
$$
Cloud$
On$Premise$
WebSphere$ WebLogic$Redhat$JBoss$
JAVA%CLOUD%SERVICE%
Java$EE$Has$Easily$TransiQoned$into$the$Cloud$$
06/05/16$ 15$Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ 17$
DATA$MANAGEMENT$
• Database$• NoSQL$Database$• Big$Data$• Big$Data$SQL$
• Big$Data$PreparaQon$• Database$Backup$• Exadata$
IT$OPERATIONS$MANAGEMENT$
• IT$AnalyQcs$• Log$AnalyQcs$• ApplicaQon$Performance$Monitoring$
IDENTITY$MANAGEMENT$
• IdenQty$
CONTENT$&$PROCESS$
• Documents$• Social$
• Process$• Sites$
APPLICATION$DEVELOPMENT$
• Java$$• ApplicaQon$Container$(Node,$Java$SE)$
• ApplicaQon$Builder$• Developer$• Mobile$
INTEGRATION$
• IntegraQon$• SOA$• API$Manager$
• Internet$of$Things$• GoldenGate$
MOBILE$
• Mobile$• IntegraQon$
• Internet$of$Things$
BUSINESS$ANALYTICS$
• Data$VisualizaQon$• Business$Intelligence$• Big$Data$Discovery$
• Big$Data$PreparaQon$• Internet$of$Things$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Oracle$Cloud$Plaeorm:$ApplicaQon$Development$Services$
18$
• Java$• ApplicaQon$Container$(Node,$Java$SE)$
• Developer$• Mobile$
• ApplicaQon$Builder$$
APPLICATION$DEVELOPMENT$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Java$Cloud:$For$Java$EE$Workloads$$
Java%
Key$Features$
• Full-Featured:$WebLogic$11g$or$12c$Instance$
• Clustering,$In-Memory,$High$Availability,$
ElasQc$Load$Balancing,$Scale$Up$&$Scale$Out$$
• Lifecycle$Tooling:$Back$Up/Restore,$Patching,$ApplicaQon$Server$Management$
• Full$Portability:$On-premise$to$Cloud$
19$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Advanced$MulQtenancy$on$Java$Servers$Even$Enables$a$Modern$Microservices$Architecture$on$Java$EE$
• Java$EE$MulQtenancy$CharacterisQcs$– ParQQons$give$service$isolaQon$(CPU/Memory)$
– ParQQons$have$independent$service$lifecycles$$(start/stop/import/export)$
– ParQQons$are$easily$ported$between$environments$(DevOps$friendly)$
– ParQQons$can$be$aligned$with$pluggable$DB$for$app/data$alignment$
• New$applicaQons$can$be$modeled$as$services$in$MulQtenant$ParQQons$– ParQQon$1$=$microservice$1;$ParQQon$2$=$microservice$2$etc$
– ParQQons$are$extremely$lightweight$and$immutable$$-$low$memory,$fast$startup$
– ParQQons$can$be$plugged$easily$into$DevOps$pipelines$to$drive$fast$release$cycles$
20$
WebLogic$MT$Dev/Test$WebLogic$MT$
Coherence$$Prod$
MS1$ MS2$ MS3$
MS2$
MS1$ MS2$ MS3$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Microservices$Built$on$Java$
21$
Some%on%Full%Java%EE,%Some%on%Java%Web%Profile,%Many%Aiming%at%Fat%Jar’s%on%Java%SE%
Enterprise%Standard%RunIme%for$
REST,$JSON,$Tx,$JMS,$EJB$
$
GlassFish,$WebLogic$
Wildfly,$Liberty$
Infrastructure$
Java$EE$Full$Profile$
Java$SE$$$
App$
Lightweight%Standard%RunIme$for$
HTTP,$REST,$JSON…$
$
GlassFish,$WebLogic$
Wildfly,$Liberty$
Infrastructure$
Java$EE$Web$Profile$
Java$SE$
App$
Even%Lighter%Non'standard%RunIme%for$
microservices$
$
Spring$Boot,$DropWizard,$
KumuluzEE$etc$
Infrastructure$
DIY$–$Pick$Your$API$
Java$SE$
Microservices$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
ApplicaQon$Container$Cloud:$For$Other$Workloads$
Key$Features$
• Useful$for$any$Java$or$$Node.js$Framework$
(other$languages$such$as$Ruby,$Python,$PHP$etc$to$come)$
• Cloud$tooling$for$lifecycle$management$
• Fully$automated$provisioning,$patching,$backup,$and$recovery$$
Java%SE%
JRuby%
Node%
22$
An$open$highly$available$Docker$container-based$elasQc$polyglot$cloud$plaeorm$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
• Deploy$applicaQons$to$a$selecQon$of$popular$language$runQmes$supported$– IniQal$support$for$Java$SE$and$Node.js$
• Leverage$unique$Oracle$Java$SE$features$– Immediate$access$to$plaeorm$upgrades,$security,$plaeorm$opQmizaQons$
– ConQnued$commercial$support$for$Java$SE$versions$no$longer$receiving$public$updates$
• Node$access$to$Oracle$DB$with$open$source$database$driver$
23$
Polyglot$Plaeorm$
php
EE%
SE%
*Python,$Ruby,$PHP,$&$Java$EE$coming$soon$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
• ApplicaQons$run$on$Oracle$Linux$in$Docker$containers$
• Stateless$ApplicaQons$– Ephemeral$disk$
– Permanent$storage$through$database$or$storage$service$
25$
Container-based$ApplicaQon$Plaeorm$as$a$Service$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
• Java$applicaQon$can$use$Java$Flight$Recorder$to$monitor$applicaQon$and$JVM$behavior$and$analyze$in$Mission$Control$
• Use$ApplicaQon$Performance$Monitoring$Cloud$Service$for$advanced$use$cases$
26$
Profiling$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
ApplicaQon$Archive$
Image$Builder$
Developer$
Java$Image$Node$Image$
Language$RunQmes$Docker$Image$Repository$$
Private$Tenant$Docker$Image$Repository$$
ApplicaQon$Image$
28$
ApplicaQon$Deployment$
Load%Balancer%
Java$SE$
Docker$
Ruby$
Docker$
Node$
Docker$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Java%SE,%Node%Cloud%Service%
Tenant&2&
29$
ApplicaQon$Container$Cloud$Architecture$$
Developer$
Load%Balancer%
…%
Messaging$Cloud$Service$
Storage$Cloud$Service$
Database$Cloud$Service$
Java$Cloud$Service$
Developer$Cloud$Service$
Tenant&1&
Node$(App$2)$
Docker$
Java$SE$(App$1)$
Docker$
Java$SE$(App$3)$
Docker$
Node$(App$2)$
Docker$
Java$SE$(App$1)$
Docker$
Java$SE$(App$3)$
Docker$
Java$SE$(App$1)$
Docker$
Node$(App$2)$
Docker$
Ruby$(App$3)$
Docker$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
ArQfacts$Are$Now$Immutable$Containers$–$Not$EARs,$WARs$
30$
Containers%can%have%anything%in%them%and%are%highly%portable%
Hardware$
OperaQng$System$
Hypervisor$
VM$1$ VM$2$
App%Server%
Hardware$
OperaQng$System$
Container$1$ Container$2$
Cloud%NaIve%
• No$more$installing$a$JVM,$app$server,$and$then$deploying$the$arQfacts$to$them$
• Build$the$container$once,$deploy$it$anywhere.$Can$include$complex$environment$variables,$scripts,$etc$
• Containers$should$be$free$of$state$and$configuraQon$
• Containers$should$not$assume$they$are$able$to$write$to$a$persistent$local$file$system$
OS$
App$Server$
EAR/WAR$
OS$
App$Server$
EAR/WAR$ The%ArIfact%You%Deploy%
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
ApplicaQon$Containers$–$Use$What$You$Have$Today$
31$
CharacterisQcs$of$Microservices-friendly$ApplicaQon$Server$
CharacterisQcs$of$ExisQng$$$ApplicaQon$Server$
• Run$a$smaller,$microservice$that$does$one$thing$really$well$
• Few$features$• External$dependency$management$
• Many$instances$per$host$
• Stateless$
• Run$a$very$large,$complicated$monolithic$applicaQon$
• Many$advanced$features$
• Integrated$dependency$management$
• Few$instances$per$host$• Stateful$
Run&whatever&works&best&–&few&firm&requirements&
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$ 32$
Using$WebLogic$+$Java$EE$For$Microservices$A%proven,%enterprise'grade%pla\orm%for%applicaIon%development%
Database$Cloud$Service$
Oracle$Cloud$
Oracle$Compute$Cloud$Service$ NoSQL$Cloud$Service$
Oracle$Management$Cloud$-$Management/Logging/AlerQng$
Messaging$Cloud$Service$
Caching$Cloud$Service$For&State,&Configura>on,&Service&Discovery&
Developer$Cloud$Service$
Oracle$Traffic$Director$
Docker$Containers$
Container$Placement$
WebLogic$MulQ-tenant$ WebLogic$MulQ-tenant$
Jersey$+$Grizzly$ Jersey$+$Grizzly$
WebLogic$ParQQon$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Using$ApplicaQon$Container$Cloud$Service$For$Microservices$
33$
A%modern%pla\orm%for%lightweight%applicaIon%development%
Database$Cloud$Service$
Oracle$Cloud$
ApplicaQon$Container$Cloud$Service$ NoSQL$Cloud$Service$
Oracle$Management$Cloud$-$Management/Logging/AlerQng$
Messaging$Cloud$Service$
Caching$Cloud$Service$for$State$
Java$SE$Cloud$Service$
API$Load$Balancer$
Service$Discovery$
ConfiguraQon$
Node$Cloud$Service$
Other$Polyglot$RunQmes$
Bring$Your$Own$Container$
Jersey$+$Grizzly$
Docker$Containers$
Container$Placement$
Developer$Cloud$Service$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Next$Up:$A$Next$GeneraQon$ApplicaQon$RunQme$
• Take$core$Java$EE$APIS$-$Jersey/JAX-RS,$Tyrus/WebSocket$and$Grizzly/NIO$-$as$a$foundaQon$
• FoundaQonal$to$a$new$style$microservices$plaeorm$
• Key$capabiliQes$and$design$goals:$$– Integrated$circuit$breaker$– Simple$packaging$model$–$Java$-jar$
– Fully$modular$(Jigsaw)$design,$to$allow$for$extensibility$$
– Deep$Swagger$integraQon$–$opQonally$API$first$– Deep$Maven$integraQon$
– Easily$cap$resource$uQlizaQon$-$CPU,$memory$
– ProgrammaQc$builder$or$class-path$discovery$modes$
– AutomaQc$registraQon$of$transiQve$Module$dependencies$$
– Concurrency$API$-$context$propagaQon,$managed$executor$services$
34$
As%part%of%a%larger%microservices%pla\orm%
MyApp.jar%
RunIme%
Compiler$
User%Code%
Key%Java%EE%APIs%
Java%SE%
Any+JVM+
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
Oracle’s$Microservices$Strategy$Oracle’s%Microservices%Roadmap% Today%With%Oracle%Products%
RunIme%
Management/Logging/AlerIng%
Messaging%
Datastore%
API%Gateway/Load%Balancer%
Central%Source%of%Truth%
Infrastructure%
Build/Deploy%
35$
Container%OrchestraIon%
Service%Discovery%
EvenIng%
ConfiguraIon%
State% Planned%-$Oracle$Cloud$State$Service$
Planned%-$Oracle$Cloud$Config$Service$
Planned%-$$RunQme$-$Jersey$+$Grizzly$
Planned%-$Oracle$Cloud$EvenQng$Service$
Oracle$Messaging$Cloud$Service$
Oracle$Management$Cloud$Service$
Oracle$Database$or$NoSQL$Cloud$Service$
Oracle$Cloud$
Planned%-$Oracle$Microservices$Plaeorm$
Oracle$Developer$Cloud$Service$
Planned%-$Oracle$Microservices$Plaeorm$
Planned%-$Oracle$Microservices$Plaeorm$
Planned%-$Oracle$Microservices$Plaeorm$
Oracle$Coherence$or$Oracle$WebLogic$
Oracle$Coherence$
Oracle$WebLogic,$Node,$Java$SE,$etc$
Oracle$Coherence$
Oracle$Messaging$Cloud$Service$
Oracle$Management$Cloud$Service$
Oracle$Database$or$NoSQL$Cloud$Service$
Oracle$Cloud$
Oracle$App$Container$Cloud$Service$
Oracle$Developer$Cloud$Service$
Oracle$App$Container$Cloud$Service$
Oracle$Coherence$
Oracle$App$Container$Cloud$Service$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
An$All-New$Microservices$Plaeorm$From$Oracle$
Oracle$ConfidenQal$–$Internal/Restricted/Highly$Restricted$
$$
• Config$• State$• EvenQng$• Messaging$
• Logging$• Monitoring$
• Database$• NoSQL$• Caching$• IntegraQon$• Big$Data$• Mobile$
• Process$• Developer$
Infrastructure$AgnosQc$ High$Availability$ Hybrid$Cloud$
Placement$Constraints$ High$Density$ Internal$Load$Balancing$
Rolling$Upgrades$ Rollbacks$
Blue/Green$Releases$
Canary$TesQng$
Health$Monitoring$Service$Discovery$Stateless$Support$
Stateful$Support$Microservices%Pla\orm%
Language-specific$Tooling$
Install$Plaeorm$On$Any$IaaS,$On$Or$Off$Premise$(future)$Consume$Plaeorm$as$PaaS$on$Oracle$Cloud$
Oracle$Public$Cloud$
Oracle$Public$Cloud$Machine&
All$New$
Services&Available&for&Consump>on&Inside&the&PlaIorm&
RunIme%
Light/fast$
Jersey-based$
Easy$Packaging$
Copyright$©$2016,$Oracle$and/or$its$affiliates.$All$rights$reserved.$
New!$
36$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ 37$
Oracle$Developer$Cloud$Service—Included$$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Developer$Cloud$Service$–$Easy$AdopQon/IntegraQon$Pre'integrated%development%technologies%in%the%cloud%
• Standards$Based$• Git,$Maven,$Hudson,$Ant,$etc.$
• Built-in$IDE$IntegraQon$• Eclipse,$NetBeans,$JDeveloper$
• Flexible$Source$LocaQon$• Hosted$Git$or$GitHub$
• Choice$of$Deployment$Target$• Oracle$Cloud$or$on-premise$
39$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ 40$
Oracle$Developer$Cloud$Service$–$Base$Architecture$
Task$Tracking$System$
Oracle$Cloud$JCS$
JCS-SX$SOA$ACC$MCS$$
Management$Cloud$
On$Premise$WebLogic$Others$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ 41$
Another$Possible$ImplementaQon$Architecture$
Task$Tracking$System$
Oracle$Cloud$JCS$
JCS-SX$ACC$$$$
Management$Cloud$
On$Premise$WebLogic$Others$
On$Premise$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ 42$
Another$Possible$ImplementaQon$Architecture$
Oracle$Cloud$JCS$
JCS-SX$SOA$ACC$MCS$$
Management$Cloud$
On$Premise$WebLogic$Others$
Webhooks$$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Oracle$Cloud$Plaeorm$-$ApplicaQon$Development$Cloud$NaQve,$Polyglot,$Java,$Mobile,$HTML5,$DeclaraQve$$
43$
Cloud$NaQve,$Polyglot$
$$
ApplicaQon$
Container$Cloud$
Modern$Java$$
$$
Java$Cloud/$
WebLogic$Server$
Mobile$$
$$
$
Mobile$Cloud$
DeclaraQve$$
$$
ApplicaQon$
Builder$Cloud$$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Key$Features$
• End-user$&$server$monitoring:$web,$mobile,$on-premises,$cloud$
• Capacity$and$resource$planning$• Estate-wide$event$and$metric$analyQcs$
• Light-touch$log$aggregaQon$with$topology-aware$search$• Machine$Learning$based$anomaly$detecQon$
• Out-of-box$dashboards$Benefits$
• Assure$good$user$experience$&$rapidly$troubleshoot$issues$• Manage$complex$applicaQons$(heterogeneous,$mulQ-cloud,$etc.)$
• Eliminate$operaQonal$data$silos$and$encourage$DevOps$
• Get$started$quickly$and$easily$with$lightweight$deployment$
IT%AnalyIcs%
Log%AnalyIcs%
44$
Performance%Monitoring%
Management$Cloud:$For$IT$OperaQons$and$DevOps$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$ Oracle$ConfidenQal$–$Internal/Restricted/Highly$Restricted$ 45$
Copyright$©$2014$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Bitnami$Popular$images,$provided$by$Bitnami,$ready$to$launch$on$Oracle$Cloud$Plaeorm$in$one$click.$
46$
h6ps://oracle.bitnami.com$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Product$Development$IT$(PDIT)$
• 602$Exadata$• 383$Exalogic$• 69,290$Sun$x86$servers$• 6,854$SPARC$servers$• 1,768$Sun$ZFS$appliances$• Thousands$of$other$systems$
48$
SupporIng%enterprise,%development%IT,%cloud%and%managed%hosIng%at%Oracle%
924$Oracle$Products$135,000$Employees$
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
How$Did$PDIT$Improve$Efficiency$by$>$2x$in$18$Months?$Culture%changes%enabled%by%technology%
49$
Culture%(Campbell%Webb,%Sr.%VP,%
Oracle)%
+% +%Cloud%
The%Same%Products%Oracle%Sells%
Infrastructure%AutomaIon%
PaaS%AutomaIon%%
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Oracle$Cloud$is$Provisioned$Using$Chef$
Database%Services%
Java%Services%
AnalyIcs%Services%
Mobile%Services%
Developer%Services%
CollaboraIon%Services%
Caching%Services%
Messaging%Services%
NoIficaIon%Services%
Storage%Services%
ApplicaIon%Store%
IdenIty%Services%
Powered&By&
50$
Oracle%Cloud%is%run%on%Chef%
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$|$
Java%OpenJDK%
MOOC%
Java%SE%
Performance%
Security%JCP%Java%Duchess%
Java%EE%
Internet%of%Things%
OTN%
Java%Embedded%
Lambd
a%
Jigsaw
%
Tooling%
Java%Magazine%
Community%CollaboraIon%
Java%User%Groups%
Adopt'a'JSR%
Java%Cha
mpion
s%
Java%Card%Java%M
E%
Clou
d%APIs%
Big%Data%NetBeans%
JEPs%
Nashorn%
Copyright$©$2015,$Oracle$and/or$its$affiliates.$All$rights$reserved.$$$
Acknowledgements$
• Oracle$PM$In$parQcular$Mike$Lehmann,$Shaun$Smith,$Kelly$Goetsch$h6p://www.slideshare.net/KellyGoetsch$
• Java$EE$stuff$from$Linda$DeMichiel,$David$Delabassee,$Reza$Rahman,$Arun$Gupta…$
• App$Server$history$is$from$a$much$older$Sun$slide$I$had$put$together$($any$errors$in$there$are$all$mine$!$)$
Oracle$ConfidenQal$–$Internal/Restricted/Highly$
Restricted$
54$