SlideShare uma empresa Scribd logo
1 de 63
Baixar para ler offline
Enterprise Java on Azure
From Java EE to Spring and more, we’ve got you
covered
Ed Burns @edburns
Principal Architect Java on Azure Developer Experiences
2019-11
© Microsoft Corporation
• Brief Personal Journey
• Ways in Which the Cloud Disrupted Enterprise
Software
• The War Metaphor
• Drill Down and Summary
My Plan for Your Time Investment
Professional Biography
Client
NCSA Mosaic (1994)
SGI Cosmo Web Authoring
Sun Netscape 6 OJI
Server
J2EE JSF (2002)
Oracle Java EE
Servlet, JSF, Bean Validation, etc.
Microsoft Azure Cloud (2019)
Books
Brief Personal Journey
❑ You must constantly adapt
❑ Not necessarily frequently change jobs
❑ Companies need to adapt too
Starting on the Client: Birth of a Big Thing
Oil and Chemistry Building at University of
Illinois in Urbana-Champaign
Home of NCSA Mosaic
First Graphical Web Browser
Gratis and Free software
Built on prior work really well
Ubiquitous (cross platform)
Delivered something everyone
wanted
Easy to author: copy and paste from
view source!
© Microsoft Corporation
Cobbles existing things together in an
exciting new way.
Simplicity: HTTP/1.0, TCP/IP sockets
Anyone can add new servers, no need
to ask permission.
Leverages network effect
Dabbling on the Server
Birth of the Monolith: Spring and J2EE
Addressed shared pain points
Transparent development process
Spring rode the crest of vendor
marketing efforts, differentiated
with operational excellence
J2EE had multi-vendor concept,
strong community governance
Photo: Les Chatfield
© Microsoft Corporation
My First “War”: Web Frameworks
Good variety of “good enough” tools
Created a component ecosystem
Lots of buzz around this space due to
“Web Framework Wars”
© Microsoft Corporation
The Cloud: Birth of Another Big Thing
2004: Sun Utility Computing
before it’s time…and at the wrong home
I’m Ready for the Cloud
My response to cloud disruption
Get out from inside of the monolith
Work with the hosting platform
Monolith
Microservices
Helps enterprises scale
© Microsoft Corporation
Ways the Cloud
Disrupted Enterprise
Software
© Microsoft Corporation
• On demand
• Self-service
• Broad network access
• Resource pooling
• Rapid elasticity
• Totally auditable
• https://aka.ms/NISTSays
Cloud Definition
© Microsoft Corporation
• Networking
• Compute
• Persistent Storage
• Memory
• Platform Services
Commoditization of All Aspects of IT Infrastructure
© Microsoft Corporation
• Pre-cloud
• Buy single license and have people on staff to maintain it
• Cloud
• Rent software by subscription
• Technologies such as HTML5 and Electron have enabled near
desktop-parity for software distribution
How and who you pay for software
© Microsoft Corporation
• Pre-cloud: install and maintain packages on site
• Cloud:
• Containerized software
How you obtain the software once you've paid for it
© Microsoft Corporation
• Pre-cloud: Your own datacenter
• Post-cloud:
• Virtualize the datacenter and move it to IaaS
How you get access to it
© Microsoft Corporation
Kampf der Giganten
© Microsoft Corporation
Java
• Spring
• Java EE
The Belligerents (Kriegsteilnehmer)
Non-Java
• Node
• Ruby
• PHP
• .NET
• Python
© Microsoft Corporation
• Your very heart and soul.
• But seriously, yes.
• If you're passionate about software, you put at least some part of
your heart and soul into it. So the belligerents are fighting over
access to that part.
• Some would call this "mindshare" but I think that's too cold a term.
The Battlefield
© Microsoft Corporation
Real Historical Aside
http://bit.ly/eisenhower-speech
The Military-Industrial Complex
The WeaponsMakers
Java App Server Vendors
• Spring Framework
• Tomcat
• RedHat
• IBM
• Bea
• Oracle
• Sun
Non-Java Runtimes
• Node
• Rails
• PHP
• IIS
Pre-Cloud
© Microsoft Corporation
The Military-Industrial Complex
The WeaponsMakers
Hardware Providers
• Sun
• IBM
• HP
• Dell
Network Providers
• Cisco
• Juniper
• Arista
• Dell EMC
• HPE
Major Cloud Vendors
• Microsoft
• Amazon
• Google
Secondary or Specialty Cloud Vendors
• Oracle
• IBM
• CloudFoundry
Pre-Cloud Cloud (Includes Hybrid)
© Microsoft Corporation
.WARs
© Microsoft Corporation
Wars
© Microsoft Corporation
“Wars”
© Microsoft Corporation
Java EE/Jakarta EE vs. Spring
“Wars” I’ve Seen
© Microsoft Corporation
Hibernate -> JPA
“Wars” I’ve Seen
© Microsoft Corporation
CDI vs. Spring DI
“Wars” I’ve Seen
© Microsoft Corporation
Java Web Framework “Wars”
• UI Component Based vs MVC based
• All the different web frameworks
JSF
Tapestry
Struts
Wicket
WebWork
“Wars” I’ve Seen
Non-Java Web Framework “Wars”
• Angular
• React
• Vue
• Ember
© Microsoft Corporation
JAX-RS vs. Spring REST
“Wars” I’ve Seen
© Microsoft Corporation
Monolith vs. Microservices
“Wars” I’ve Seen
© Microsoft Corporation
• The old belligerents are still here, they just have been
absorbed into other entities.
• But the cloud providers have now inserted
themselves into the fray
Enter the Clouds
“Allof the Above”
© Microsoft Corporation
From my particular cloud-provider's perspective, we
want to be the best place for all of your Java
workloads
• IaaS to the cloud
• Containers
• PaaS to the cloud
Enter the Clouds
“Allof the Above”
Drill Down and
Summary
Java on Azure for Wherever You Are in your Cloud Journey
Java EE on
Azure IaaS
Azure
Container
Instances
Azure
Kubernetes
Service
Azure
RedHat
OpenShift
Azure Spring-
Cloud Service
Azure
Functions
Azure Stack Azure
WildFly PaaS
© Microsoft Corporation
Java EE on Azure with Oracle WebLogic
Azure Marketplace Solution for WebLogic
Published, maintained and supported by Oracle
Based on Oracle Linux 7.6, Oracle JDK and WebLogic 12c R2
(12.2.1.3)
Bring your own license
Supports common use-cases such as load-balancing and clustering
© Microsoft Corporation
Simple to Start
Single fully functional instance of WebLogic
Admin only domain
Starts admin server
systemd configured for automatic restart
© Microsoft Corporation
Clustering
Fully functioning clustered multi-node domain
User can specify number of nodes
Admin server and all managed nodes are started by default when provisioning completes
Admin server and node manager are started as systemctl service and CrashRecoveryEnabled is set to
true for the node manager so even after a VM reboot servers are restarted automatically
User can add nodes later
Static and dynamic clustering
© Microsoft Corporation
© Microsoft Corporation
WebLogic Server on Azure IaaS
Script file
ARM template
Virtual Network
Admin Server Public IP
Admin Server NIC
Admin Sever VM
Managed Sever Public IPs
Managed Server NICs
Managed Server VMs
Storage
© Microsoft Corporation
WebLogic Server on Azure IaaS
Weblogic DomainMachine
Machine
Node Manager
Admin Server
Node Manager
Managed Server
Managed Server
Managed Server
Node Manager
Managed Server
Managed Server
Managed Server
Dynamic Cluster
Scale to ‘n’ Managed Servers
© Microsoft Corporation
WebLogic on Azure IaaS
Four Azure Application Offers in the Marketplace
• Create a single VM with WebLogic Admin Only
domain pre-configured
• Create an N-node WebLogic cluster with the admin
server on one VM and cluster members on
other VMs
• Create an N-node WebLogic cluster as in the
preceding offer, but with an Azure LoadBalancer
automatically configured for the cluster
• Create an N-node WebLogic dynamic cluster with
the admin server on one VM and managed servers in
a Dynamic cluster on the other nodes
© Microsoft Corporation
WebLogic and Coherence on Azure Kubernetes Service
Kubernetes: The industry leading orchestrator
Portable
Public, private,
hybrid, multi-cloud
Extensible
Modular, pluggable,
hookable, composable
Self-healing
Auto-placement, auto-restart,
auto-replication, auto-scaling
© Microsoft Corporation
Customer VMs
Docker Docker Docker Docker
Kubernetes API
endpointUser
App/workload
definition
Master Node(s) – self managed
API Server etcd store
Controller Mgr
Cloud Controller
Schedule pods over private tunnel
How Managed Kubernetes on Azure works
Azure managed control plane
• Automated upgrades,
patches
• High reliability and
availability
• Easy and secure cluster
scaling
• Self-healing
• API server monitoring
• Control plane at no charge
© Microsoft Corporation
How WebLogic and Coherence work on Azure Kubernetes Service
© Microsoft Corporation
Kubectl
Kubernetes
Kebectl create…
Install Domain
inputs (yaml)
Customer Tenancy
WLS Domain
Image
Operator Image
Kubernetes cluster
Domain
Secrets
Operator
WebLogic Domain(s)
WLS Cluster
AS MS MS MSMS MS
PVLogs
Open Source Helm Charts
Open Source Kubernetes
Operators
• Oracle WebLogic
https://aka.ms/wlsoperator
• Oracle Coherence
https://aka.ms/cohoperator
© Microsoft Corporation
Roadmap
Connecting to Oracle DB via OCI Interconnect
Integration with Active Directory
Distributed logging using managed ELK on Azure
Caching using Coherence cluster
Responsibilities
User management
Project and quota management
Application lifecycle
Cluster creation
Cluster management
Monitoring and logging
Network configuration
Software and security updates
Platform support
Customer Microsoft and Red Hat
Virtual network
Azure DNS
Azure Load
Balancer (Master)
Azure Load
Balancer (Router)
Public IP Public IP Public IP
Azure Active
Directory
OpenShift API/administration console App 1 App 2
User
App
definition
Azure VMs (Master)
Scale sets
Azure Premium SSD Managed Disks
Node 1 Node 2 Node 3
api-server • controller-manager • etcd
Azure VMs (Infrastructure)
Scale sets
Azure Premium
SSD Managed
Disks
Node 1 Node 2 Node 3
registry • router
Azure VMs (Application)
Scale sets
Azure Premium SSD Managed Disks
Node 1 Node 2 Node N
application pods
Azure Blob
Storage
OpenShift SDN
Node 3 Node 4
Azure Key
Vault
Virtual network
Azure DNS
Azure Load
Balancer (Master)
Azure Load
Balancer (Router)
Public IP Public IP Public IP
Azure Active
Directory
OpenShift API/administration console App 1 App 2
User
App
definition
Azure VMs (Master)
Scale sets
Azure Premium SSD Managed Disks
Node 1 Node 2 Node 3
api-server • controller-manager • etcd
Azure VMs (Infrastructure)
Scale sets
Azure Premium
SSD Managed
Disks
Node 1 Node 2 Node 3
registry • router
Azure VMs (Application)
Scale sets
Azure Premium SSD Managed Disks
Node 1 Node 2 Node N
application pods
Azure Blob
Storage
OpenShift SDN
Node 3 Node 4
Azure Key
Vault
Responsibilities
User management
Project and quota management
Application lifecycle
Cluster creation
Cluster management
Monitoring and logging
Network configuration
Software and security updates
Platform support
Customer Microsoft and Red Hat
Microsoft Red Hat
Middleware + Data services Service catalog
Azure and OpenShift self-service
OpenShift application lifecycle management
Build automation Deployment automation
Container ContainerContainer Container Container
Container orchestration Cluster services
Networking Storage Registry Telemetry Security
Container runtime and packaging
Red Hat Enterprise Linux
Physical infrastructure on Azure
Setup, maintenance, and
monitoring provided by Red Hat
Premium support from Red Hat
Hosted in the Azure
region of your choice
VPN connectivity back to the
customer environment
Rapidly deploy and scale
containerized apps and services
An entire OpenShift cluster
dedicated to your organization
Youfocus
onapps
MicrosoftandRed
Hatfocuson
infrastructure
• High productivity
• Fully-managed platform
• Highly secure, natively
supports SSL
Azure App Service
App Service
Web Apps that Scale with
your Business
• Full capability set available including:
- .NET, Node.js, Java, PHP, and Python
- WebJobs for long running tasks
- Integrated VS publish, remote debug…
- CI with GitHub, BitBucket, VSTS
- Auto-load balance, Autoscale, Geo DR
- Virtual networking and hybrid connections
- Site slots for staged deployments
• Web Sockets
- Integrate real-time communication scenarios
- SignalR and Socket.io libraries supported
• Always On
- Keeps your Web App active (warm)
- Standard Mode Web App or higher
- Recommended if you have Web Jobs
• Custom HTTP Handler Mappings
• Virtual Applications & Directories
Additional Application Settings
App Service
• Retrieve as Environment Variables
• Retrieve as Key/Value from ConfigurationManager
App Settings and Connection Strings
App Service
// node.js
var value = process.env.APPSETTING_JobServiceUri;
var value2 = process.env.SQLAZURECONNSTR_JobDatabase;
• Log File Targets
- File System (Shared Cloud Drive)
- Azure Blob Storage
• Web Server Log
- File System or Azure Blob Storage
• Detailed Error Messages
• Failed Request Tracing
- File System Only
Diagnostics Log Files
App Service
• Easy API consumption
- Integration with Swagger API metadata
- Client SDK code generation (C#, Java, and JavaScript)
• Simple Access Control
- Easily secure APIs using Azure AD or Social Logins (Facebook, Twitter, Google, Microsoft Account)
• Workflow Integration with Azure Logic Apps
• First Class Tooling Support
- Visual Studio and Visual Studio Code
- Maven
API Apps
App Service
Spring Boot
BUILD ANYTHING
Spring Cloud
COORDINATE ANYTHING
Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of Spring
Spring Cloud provides a set of tools that makes communication between microservices easier
Spring based microservices development
Spring Cloud Apps
Spring Cloud
ComponentsSpring Cloud Components Cloud ServicesApp Consumers
High effort required to manage cloud
infrastructure for Spring boot applications
Application lifecycle is difficult to manage
Painful to troubleshoot application issues
Common Challenges
Azure Spring Cloud
A fully managed service for Spring Boot microservices
Fully managed
Infrastructure
Built-in application
lifecycle
management
Ease of monitoring
More choices and full integration into Azure’s ecosystem and services
Enterprise Ready
Spring Cloud - Architecture
Responsibiliti
es
DIY with
Spring
Boot
Azure Spring
Cloud Service
Application
iteration,
debugging
CI/CD
Build and
manage
Clusters
Host Spring
Cloud
Components
Monitoring
and logging
Patching
Scaling
Support
Customer Pivotal Microsoft
Simplify your cloud infrastructure for Spring boot applications
Responsibiliti
es
DIY with
Spring
Boot
Azure Spring
Cloud Service
Application
iteration,
debugging
CI/CD
Build and
manage
Clusters
Host Spring
Cloud
Components
Monitoring
and logging
Patching
Scaling
Support
Customer Pivotal Microsoft
Microsoft Pivotal.
Azure Spring Cloud
• Simple app lifecycle
management
• Easily deploy source
code or build artifacts
• Automatically wire your
app with Spring Cloud
infrastructure
• Integrated CI/CD
pipeline for deployment
Built-in application lifecycle management
Monitor your apps
Gain insights with Azure
monitor
Aggregate metrics
Identify reliability issues
Q3 2019 Q4 2019 Q1 2020 Q2 2020
June
Limited Private Preview
• Application lifecycle management
• Config server
• Eureka
• Manual scaling
General Availability
• 99.9x SLA
• Available in more Azure Regions
• Production grade app monitor
and diagnostics (e.g. app runtime
inspection)
• Circuit breaker dashboard
• Auto scale
• E2E dev experience in IntelliJ
…
Other features based on customer
feedback and market trends (e.g.
Enterprise grade security)November
Public Preview
• Full billing
• Customer support
October
Private Preview public announcement
• Additional capabilities in Config
server
• Azure monitor
• Diagnostics
• Distributed tracing
• Build service
• Blue green deployment
• Service binding
• SSL
• UX revamp
• Documentation
• Deployment experience w/ Maven
Roadmap (Calendar Year)
• Log streaming
• Alerts based on monitoring data
• Basic tier
• MSI support for Azure resources
• Custom domain
• Interactive self-diagnostics
• Auto patching systems and app
runtime
• Jenkins integration
• VNET
Future
Candidates
• .NET core/Steeltoe
• mTLS among
customers’
applications
• Support certificate
for outband traffic
(e.g. from app to
Data services)
• ….
© Microsoft Corporation
• Be willing to adapt and change your focus
• The cloud has disrupted everything
• Individuals
• Businesses
• Business models
• Don’t get distracted by “Wars”
• Find the real value, focus on that
• Azure is a great cloud for Java workloads
Summary

Mais conteúdo relacionado

Mais procurados

Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020
Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020
Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020VMware Tanzu
 
Pivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleasePivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleaseVMware Tanzu
 
Enterprise Application Migration
Enterprise Application MigrationEnterprise Application Migration
Enterprise Application MigrationVMware Tanzu
 
Governance for your Modern Application Platform - November 4, 2020
Governance for your Modern Application Platform - November 4, 2020Governance for your Modern Application Platform - November 4, 2020
Governance for your Modern Application Platform - November 4, 2020VMware Tanzu
 
Thinking about Jenkins Security
Thinking about Jenkins SecurityThinking about Jenkins Security
Thinking about Jenkins SecurityMark Waite
 
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...confluent
 
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiInnovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiVietnam Open Infrastructure User Group
 
Enterprise pks overview
Enterprise pks overview Enterprise pks overview
Enterprise pks overview Boskey Savla
 
Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020VMware Tanzu
 
VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu
 
Pivotal Container Service Overview
Pivotal Container Service Overview Pivotal Container Service Overview
Pivotal Container Service Overview VMware Tanzu
 
PKS: The What and How of Enterprise-Grade Kubernetes
PKS: The What and How of Enterprise-Grade KubernetesPKS: The What and How of Enterprise-Grade Kubernetes
PKS: The What and How of Enterprise-Grade KubernetesVMware Tanzu
 
Pivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure SlidesPivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure SlidesVMware Tanzu
 
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server Simone Morellato
 
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...Ashnikbiz
 
vSphere7 with Tanzu
vSphere7 with Tanzu vSphere7 with Tanzu
vSphere7 with Tanzu VMware Tanzu
 
Welcome to the Metrics
Welcome to the MetricsWelcome to the Metrics
Welcome to the MetricsVMware Tanzu
 
vSphere with Kubernetes Virtual Event- June 16, 2020
vSphere with Kubernetes Virtual Event- June 16, 2020vSphere with Kubernetes Virtual Event- June 16, 2020
vSphere with Kubernetes Virtual Event- June 16, 2020VMware Tanzu
 

Mais procurados (20)

Cloud-native Data
Cloud-native DataCloud-native Data
Cloud-native Data
 
Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020
Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020
Delivering-Off-The-Shelf Software with Kubernetes- November 12, 2020
 
Pivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October ReleasePivotal Platform: A First Look at the October Release
Pivotal Platform: A First Look at the October Release
 
Enterprise Application Migration
Enterprise Application MigrationEnterprise Application Migration
Enterprise Application Migration
 
Governance for your Modern Application Platform - November 4, 2020
Governance for your Modern Application Platform - November 4, 2020Governance for your Modern Application Platform - November 4, 2020
Governance for your Modern Application Platform - November 4, 2020
 
Thinking about Jenkins Security
Thinking about Jenkins SecurityThinking about Jenkins Security
Thinking about Jenkins Security
 
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...
Deploying Kafka on vSphere with Kubernetes Using the Confluent Operator (Just...
 
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. ChoiInnovation with Open Sources and App Modernization for Developers | Ian Y. Choi
Innovation with Open Sources and App Modernization for Developers | Ian Y. Choi
 
Tanzu Standard
Tanzu StandardTanzu Standard
Tanzu Standard
 
Enterprise pks overview
Enterprise pks overview Enterprise pks overview
Enterprise pks overview
 
Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020
 
VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020VMware Tanzu Introduction- June 11, 2020
VMware Tanzu Introduction- June 11, 2020
 
Pivotal Container Service Overview
Pivotal Container Service Overview Pivotal Container Service Overview
Pivotal Container Service Overview
 
PKS: The What and How of Enterprise-Grade Kubernetes
PKS: The What and How of Enterprise-Grade KubernetesPKS: The What and How of Enterprise-Grade Kubernetes
PKS: The What and How of Enterprise-Grade Kubernetes
 
Pivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure SlidesPivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure Slides
 
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
 
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...
Secure your CI/CD pipeline with Docker EE Platform, Tech Insights Singapore -...
 
vSphere7 with Tanzu
vSphere7 with Tanzu vSphere7 with Tanzu
vSphere7 with Tanzu
 
Welcome to the Metrics
Welcome to the MetricsWelcome to the Metrics
Welcome to the Metrics
 
vSphere with Kubernetes Virtual Event- June 16, 2020
vSphere with Kubernetes Virtual Event- June 16, 2020vSphere with Kubernetes Virtual Event- June 16, 2020
vSphere with Kubernetes Virtual Event- June 16, 2020
 

Semelhante a Enterprise Java on Azure: From Java EE to Spring, we have you covered

Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...Ed Burns
 
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
Wars I’ve SeenFrom Java EE to Spring and more, Azure has you coveredWars I’ve SeenFrom Java EE to Spring and more, Azure has you covered
Wars I’ve Seen From Java EE to Spring and more, Azure has you coveredEdward Burns
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution BriefingEd Burns
 
Basics of Java Cloud
Basics of Java CloudBasics of Java Cloud
Basics of Java CloudAnkur Gupta
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)Simon Haslam
 
Sponsored Session: Please touch that dial!
Sponsored Session: Please touch that dial!Sponsored Session: Please touch that dial!
Sponsored Session: Please touch that dial!Edward Burns
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
Java on Your Terms with Azure
Java on Your Terms with AzureJava on Your Terms with Azure
Java on Your Terms with AzureEdward Burns
 
20191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 120191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 1makker_nl
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC vipin kumar
 
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - Concero
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - ConceroCTU June 2011 - Hybrid Cloud Management with Microsoft System Center - Concero
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - ConceroSpiffy
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5mbaric
 
One And Done Multi-Cloud Load Balancing Done Right.pptx
One And Done Multi-Cloud Load Balancing Done Right.pptxOne And Done Multi-Cloud Load Balancing Done Right.pptx
One And Done Multi-Cloud Load Balancing Done Right.pptxAvi Networks
 
Presentation vmware building “your cloud”
Presentation   vmware building “your cloud”Presentation   vmware building “your cloud”
Presentation vmware building “your cloud”solarisyourep
 

Semelhante a Enterprise Java on Azure: From Java EE to Spring, we have you covered (20)

Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
Enterprise Java on Microsoft Azure: From Java EE to Spring, we’ve got you cov...
 
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
Wars I’ve SeenFrom Java EE to Spring and more, Azure has you coveredWars I’ve SeenFrom Java EE to Spring and more, Azure has you covered
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
 
Basics of Java Cloud
Basics of Java CloudBasics of Java Cloud
Basics of Java Cloud
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)
 
Sponsored Session: Please touch that dial!
Sponsored Session: Please touch that dial!Sponsored Session: Please touch that dial!
Sponsored Session: Please touch that dial!
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Java on Your Terms with Azure
Java on Your Terms with AzureJava on Your Terms with Azure
Java on Your Terms with Azure
 
20191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 120191201 kubernetes managed weblogic revival - part 1
20191201 kubernetes managed weblogic revival - part 1
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - Concero
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - ConceroCTU June 2011 - Hybrid Cloud Management with Microsoft System Center - Concero
CTU June 2011 - Hybrid Cloud Management with Microsoft System Center - Concero
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
 
One And Done Multi-Cloud Load Balancing Done Right.pptx
One And Done Multi-Cloud Load Balancing Done Right.pptxOne And Done Multi-Cloud Load Balancing Done Right.pptx
One And Done Multi-Cloud Load Balancing Done Right.pptx
 
Micro services
Micro servicesMicro services
Micro services
 
Presentation vmware building “your cloud”
Presentation   vmware building “your cloud”Presentation   vmware building “your cloud”
Presentation vmware building “your cloud”
 
cloud computing
cloud computingcloud computing
cloud computing
 

Mais de Ed Burns

What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfileWhat We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfileEd Burns
 
What Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java DevelopmentWhat Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java DevelopmentEd Burns
 
Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?Ed Burns
 
Oracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the CloudOracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the CloudEd Burns
 
Seminole County Teach In 2017: Crooms Acadamy of Information Technology
Seminole County Teach In 2017: Crooms Acadamy of Information TechnologySeminole County Teach In 2017: Crooms Acadamy of Information Technology
Seminole County Teach In 2017: Crooms Acadamy of Information TechnologyEd Burns
 
JavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a ThereminJavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a ThereminEd Burns
 
Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017Ed Burns
 
Chicago JUG / GOTO Meetup
Chicago JUG / GOTO MeetupChicago JUG / GOTO Meetup
Chicago JUG / GOTO MeetupEd Burns
 
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016Ed Burns
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessEd Burns
 

Mais de Ed Burns (10)

What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfileWhat We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
What We Learned from Porting PiggyMetrics from Spring Boot to MicroProfile
 
What Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java DevelopmentWhat Visual Studio Code can do for Java Development
What Visual Studio Code can do for Java Development
 
Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?Programming Language Platform Growth: Table Stakes or Deal Makes?
Programming Language Platform Growth: Table Stakes or Deal Makes?
 
Oracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the CloudOracle Code Online: Building a Serverless State Service for the Cloud
Oracle Code Online: Building a Serverless State Service for the Cloud
 
Seminole County Teach In 2017: Crooms Acadamy of Information Technology
Seminole County Teach In 2017: Crooms Acadamy of Information TechnologySeminole County Teach In 2017: Crooms Acadamy of Information Technology
Seminole County Teach In 2017: Crooms Acadamy of Information Technology
 
JavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a ThereminJavaOne-2017 Ignite Session: How to build a Theremin
JavaOne-2017 Ignite Session: How to build a Theremin
 
Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017Servlet 4.0 JavaOne 2017
Servlet 4.0 JavaOne 2017
 
Chicago JUG / GOTO Meetup
Chicago JUG / GOTO MeetupChicago JUG / GOTO Meetup
Chicago JUG / GOTO Meetup
 
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
 

Último

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
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
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Último (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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...
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Enterprise Java on Azure: From Java EE to Spring, we have you covered

  • 1. Enterprise Java on Azure From Java EE to Spring and more, we’ve got you covered Ed Burns @edburns Principal Architect Java on Azure Developer Experiences 2019-11
  • 2. © Microsoft Corporation • Brief Personal Journey • Ways in Which the Cloud Disrupted Enterprise Software • The War Metaphor • Drill Down and Summary My Plan for Your Time Investment
  • 3. Professional Biography Client NCSA Mosaic (1994) SGI Cosmo Web Authoring Sun Netscape 6 OJI Server J2EE JSF (2002) Oracle Java EE Servlet, JSF, Bean Validation, etc. Microsoft Azure Cloud (2019) Books
  • 4. Brief Personal Journey ❑ You must constantly adapt ❑ Not necessarily frequently change jobs ❑ Companies need to adapt too
  • 5. Starting on the Client: Birth of a Big Thing Oil and Chemistry Building at University of Illinois in Urbana-Champaign Home of NCSA Mosaic First Graphical Web Browser Gratis and Free software Built on prior work really well Ubiquitous (cross platform) Delivered something everyone wanted Easy to author: copy and paste from view source!
  • 6. © Microsoft Corporation Cobbles existing things together in an exciting new way. Simplicity: HTTP/1.0, TCP/IP sockets Anyone can add new servers, no need to ask permission. Leverages network effect Dabbling on the Server
  • 7. Birth of the Monolith: Spring and J2EE Addressed shared pain points Transparent development process Spring rode the crest of vendor marketing efforts, differentiated with operational excellence J2EE had multi-vendor concept, strong community governance Photo: Les Chatfield
  • 8. © Microsoft Corporation My First “War”: Web Frameworks Good variety of “good enough” tools Created a component ecosystem Lots of buzz around this space due to “Web Framework Wars”
  • 9. © Microsoft Corporation The Cloud: Birth of Another Big Thing 2004: Sun Utility Computing before it’s time…and at the wrong home
  • 10. I’m Ready for the Cloud My response to cloud disruption Get out from inside of the monolith Work with the hosting platform Monolith Microservices Helps enterprises scale
  • 11. © Microsoft Corporation Ways the Cloud Disrupted Enterprise Software
  • 12. © Microsoft Corporation • On demand • Self-service • Broad network access • Resource pooling • Rapid elasticity • Totally auditable • https://aka.ms/NISTSays Cloud Definition
  • 13. © Microsoft Corporation • Networking • Compute • Persistent Storage • Memory • Platform Services Commoditization of All Aspects of IT Infrastructure
  • 14. © Microsoft Corporation • Pre-cloud • Buy single license and have people on staff to maintain it • Cloud • Rent software by subscription • Technologies such as HTML5 and Electron have enabled near desktop-parity for software distribution How and who you pay for software
  • 15. © Microsoft Corporation • Pre-cloud: install and maintain packages on site • Cloud: • Containerized software How you obtain the software once you've paid for it
  • 16. © Microsoft Corporation • Pre-cloud: Your own datacenter • Post-cloud: • Virtualize the datacenter and move it to IaaS How you get access to it
  • 18. © Microsoft Corporation Java • Spring • Java EE The Belligerents (Kriegsteilnehmer) Non-Java • Node • Ruby • PHP • .NET • Python
  • 19. © Microsoft Corporation • Your very heart and soul. • But seriously, yes. • If you're passionate about software, you put at least some part of your heart and soul into it. So the belligerents are fighting over access to that part. • Some would call this "mindshare" but I think that's too cold a term. The Battlefield
  • 20. © Microsoft Corporation Real Historical Aside http://bit.ly/eisenhower-speech The Military-Industrial Complex The WeaponsMakers Java App Server Vendors • Spring Framework • Tomcat • RedHat • IBM • Bea • Oracle • Sun Non-Java Runtimes • Node • Rails • PHP • IIS Pre-Cloud
  • 21. © Microsoft Corporation The Military-Industrial Complex The WeaponsMakers Hardware Providers • Sun • IBM • HP • Dell Network Providers • Cisco • Juniper • Arista • Dell EMC • HPE Major Cloud Vendors • Microsoft • Amazon • Google Secondary or Specialty Cloud Vendors • Oracle • IBM • CloudFoundry Pre-Cloud Cloud (Includes Hybrid)
  • 25. © Microsoft Corporation Java EE/Jakarta EE vs. Spring “Wars” I’ve Seen
  • 26. © Microsoft Corporation Hibernate -> JPA “Wars” I’ve Seen
  • 27. © Microsoft Corporation CDI vs. Spring DI “Wars” I’ve Seen
  • 28. © Microsoft Corporation Java Web Framework “Wars” • UI Component Based vs MVC based • All the different web frameworks JSF Tapestry Struts Wicket WebWork “Wars” I’ve Seen Non-Java Web Framework “Wars” • Angular • React • Vue • Ember
  • 29. © Microsoft Corporation JAX-RS vs. Spring REST “Wars” I’ve Seen
  • 30. © Microsoft Corporation Monolith vs. Microservices “Wars” I’ve Seen
  • 31. © Microsoft Corporation • The old belligerents are still here, they just have been absorbed into other entities. • But the cloud providers have now inserted themselves into the fray Enter the Clouds “Allof the Above”
  • 32. © Microsoft Corporation From my particular cloud-provider's perspective, we want to be the best place for all of your Java workloads • IaaS to the cloud • Containers • PaaS to the cloud Enter the Clouds “Allof the Above”
  • 34. Java on Azure for Wherever You Are in your Cloud Journey Java EE on Azure IaaS Azure Container Instances Azure Kubernetes Service Azure RedHat OpenShift Azure Spring- Cloud Service Azure Functions Azure Stack Azure WildFly PaaS
  • 35. © Microsoft Corporation Java EE on Azure with Oracle WebLogic Azure Marketplace Solution for WebLogic Published, maintained and supported by Oracle Based on Oracle Linux 7.6, Oracle JDK and WebLogic 12c R2 (12.2.1.3) Bring your own license Supports common use-cases such as load-balancing and clustering
  • 36. © Microsoft Corporation Simple to Start Single fully functional instance of WebLogic Admin only domain Starts admin server systemd configured for automatic restart
  • 37. © Microsoft Corporation Clustering Fully functioning clustered multi-node domain User can specify number of nodes Admin server and all managed nodes are started by default when provisioning completes Admin server and node manager are started as systemctl service and CrashRecoveryEnabled is set to true for the node manager so even after a VM reboot servers are restarted automatically User can add nodes later Static and dynamic clustering
  • 39. © Microsoft Corporation WebLogic Server on Azure IaaS Script file ARM template Virtual Network Admin Server Public IP Admin Server NIC Admin Sever VM Managed Sever Public IPs Managed Server NICs Managed Server VMs Storage
  • 40. © Microsoft Corporation WebLogic Server on Azure IaaS Weblogic DomainMachine Machine Node Manager Admin Server Node Manager Managed Server Managed Server Managed Server Node Manager Managed Server Managed Server Managed Server Dynamic Cluster Scale to ‘n’ Managed Servers
  • 41. © Microsoft Corporation WebLogic on Azure IaaS Four Azure Application Offers in the Marketplace • Create a single VM with WebLogic Admin Only domain pre-configured • Create an N-node WebLogic cluster with the admin server on one VM and cluster members on other VMs • Create an N-node WebLogic cluster as in the preceding offer, but with an Azure LoadBalancer automatically configured for the cluster • Create an N-node WebLogic dynamic cluster with the admin server on one VM and managed servers in a Dynamic cluster on the other nodes
  • 42. © Microsoft Corporation WebLogic and Coherence on Azure Kubernetes Service Kubernetes: The industry leading orchestrator Portable Public, private, hybrid, multi-cloud Extensible Modular, pluggable, hookable, composable Self-healing Auto-placement, auto-restart, auto-replication, auto-scaling
  • 43. © Microsoft Corporation Customer VMs Docker Docker Docker Docker Kubernetes API endpointUser App/workload definition Master Node(s) – self managed API Server etcd store Controller Mgr Cloud Controller Schedule pods over private tunnel How Managed Kubernetes on Azure works Azure managed control plane • Automated upgrades, patches • High reliability and availability • Easy and secure cluster scaling • Self-healing • API server monitoring • Control plane at no charge
  • 44. © Microsoft Corporation How WebLogic and Coherence work on Azure Kubernetes Service © Microsoft Corporation Kubectl Kubernetes Kebectl create… Install Domain inputs (yaml) Customer Tenancy WLS Domain Image Operator Image Kubernetes cluster Domain Secrets Operator WebLogic Domain(s) WLS Cluster AS MS MS MSMS MS PVLogs Open Source Helm Charts Open Source Kubernetes Operators • Oracle WebLogic https://aka.ms/wlsoperator • Oracle Coherence https://aka.ms/cohoperator
  • 45. © Microsoft Corporation Roadmap Connecting to Oracle DB via OCI Interconnect Integration with Active Directory Distributed logging using managed ELK on Azure Caching using Coherence cluster
  • 46. Responsibilities User management Project and quota management Application lifecycle Cluster creation Cluster management Monitoring and logging Network configuration Software and security updates Platform support Customer Microsoft and Red Hat Virtual network Azure DNS Azure Load Balancer (Master) Azure Load Balancer (Router) Public IP Public IP Public IP Azure Active Directory OpenShift API/administration console App 1 App 2 User App definition Azure VMs (Master) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node 3 api-server • controller-manager • etcd Azure VMs (Infrastructure) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node 3 registry • router Azure VMs (Application) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node N application pods Azure Blob Storage OpenShift SDN Node 3 Node 4 Azure Key Vault
  • 47. Virtual network Azure DNS Azure Load Balancer (Master) Azure Load Balancer (Router) Public IP Public IP Public IP Azure Active Directory OpenShift API/administration console App 1 App 2 User App definition Azure VMs (Master) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node 3 api-server • controller-manager • etcd Azure VMs (Infrastructure) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node 3 registry • router Azure VMs (Application) Scale sets Azure Premium SSD Managed Disks Node 1 Node 2 Node N application pods Azure Blob Storage OpenShift SDN Node 3 Node 4 Azure Key Vault Responsibilities User management Project and quota management Application lifecycle Cluster creation Cluster management Monitoring and logging Network configuration Software and security updates Platform support Customer Microsoft and Red Hat Microsoft Red Hat
  • 48. Middleware + Data services Service catalog Azure and OpenShift self-service OpenShift application lifecycle management Build automation Deployment automation Container ContainerContainer Container Container Container orchestration Cluster services Networking Storage Registry Telemetry Security Container runtime and packaging Red Hat Enterprise Linux Physical infrastructure on Azure Setup, maintenance, and monitoring provided by Red Hat Premium support from Red Hat Hosted in the Azure region of your choice VPN connectivity back to the customer environment Rapidly deploy and scale containerized apps and services An entire OpenShift cluster dedicated to your organization Youfocus onapps MicrosoftandRed Hatfocuson infrastructure
  • 49. • High productivity • Fully-managed platform • Highly secure, natively supports SSL Azure App Service
  • 50. App Service Web Apps that Scale with your Business • Full capability set available including: - .NET, Node.js, Java, PHP, and Python - WebJobs for long running tasks - Integrated VS publish, remote debug… - CI with GitHub, BitBucket, VSTS - Auto-load balance, Autoscale, Geo DR - Virtual networking and hybrid connections - Site slots for staged deployments
  • 51. • Web Sockets - Integrate real-time communication scenarios - SignalR and Socket.io libraries supported • Always On - Keeps your Web App active (warm) - Standard Mode Web App or higher - Recommended if you have Web Jobs • Custom HTTP Handler Mappings • Virtual Applications & Directories Additional Application Settings App Service
  • 52. • Retrieve as Environment Variables • Retrieve as Key/Value from ConfigurationManager App Settings and Connection Strings App Service // node.js var value = process.env.APPSETTING_JobServiceUri; var value2 = process.env.SQLAZURECONNSTR_JobDatabase;
  • 53. • Log File Targets - File System (Shared Cloud Drive) - Azure Blob Storage • Web Server Log - File System or Azure Blob Storage • Detailed Error Messages • Failed Request Tracing - File System Only Diagnostics Log Files App Service
  • 54. • Easy API consumption - Integration with Swagger API metadata - Client SDK code generation (C#, Java, and JavaScript) • Simple Access Control - Easily secure APIs using Azure AD or Social Logins (Facebook, Twitter, Google, Microsoft Account) • Workflow Integration with Azure Logic Apps • First Class Tooling Support - Visual Studio and Visual Studio Code - Maven API Apps App Service
  • 55. Spring Boot BUILD ANYTHING Spring Cloud COORDINATE ANYTHING Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of Spring Spring Cloud provides a set of tools that makes communication between microservices easier Spring based microservices development
  • 56. Spring Cloud Apps Spring Cloud ComponentsSpring Cloud Components Cloud ServicesApp Consumers High effort required to manage cloud infrastructure for Spring boot applications Application lifecycle is difficult to manage Painful to troubleshoot application issues Common Challenges
  • 57. Azure Spring Cloud A fully managed service for Spring Boot microservices Fully managed Infrastructure Built-in application lifecycle management Ease of monitoring More choices and full integration into Azure’s ecosystem and services Enterprise Ready
  • 58. Spring Cloud - Architecture Responsibiliti es DIY with Spring Boot Azure Spring Cloud Service Application iteration, debugging CI/CD Build and manage Clusters Host Spring Cloud Components Monitoring and logging Patching Scaling Support Customer Pivotal Microsoft
  • 59. Simplify your cloud infrastructure for Spring boot applications Responsibiliti es DIY with Spring Boot Azure Spring Cloud Service Application iteration, debugging CI/CD Build and manage Clusters Host Spring Cloud Components Monitoring and logging Patching Scaling Support Customer Pivotal Microsoft Microsoft Pivotal. Azure Spring Cloud
  • 60. • Simple app lifecycle management • Easily deploy source code or build artifacts • Automatically wire your app with Spring Cloud infrastructure • Integrated CI/CD pipeline for deployment Built-in application lifecycle management
  • 61. Monitor your apps Gain insights with Azure monitor Aggregate metrics Identify reliability issues
  • 62. Q3 2019 Q4 2019 Q1 2020 Q2 2020 June Limited Private Preview • Application lifecycle management • Config server • Eureka • Manual scaling General Availability • 99.9x SLA • Available in more Azure Regions • Production grade app monitor and diagnostics (e.g. app runtime inspection) • Circuit breaker dashboard • Auto scale • E2E dev experience in IntelliJ … Other features based on customer feedback and market trends (e.g. Enterprise grade security)November Public Preview • Full billing • Customer support October Private Preview public announcement • Additional capabilities in Config server • Azure monitor • Diagnostics • Distributed tracing • Build service • Blue green deployment • Service binding • SSL • UX revamp • Documentation • Deployment experience w/ Maven Roadmap (Calendar Year) • Log streaming • Alerts based on monitoring data • Basic tier • MSI support for Azure resources • Custom domain • Interactive self-diagnostics • Auto patching systems and app runtime • Jenkins integration • VNET Future Candidates • .NET core/Steeltoe • mTLS among customers’ applications • Support certificate for outband traffic (e.g. from app to Data services) • ….
  • 63. © Microsoft Corporation • Be willing to adapt and change your focus • The cloud has disrupted everything • Individuals • Businesses • Business models • Don’t get distracted by “Wars” • Find the real value, focus on that • Azure is a great cloud for Java workloads Summary