[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicações Java em nuvem com Microsoft Azure
1. Agilidade para disponibilização de aplicações Java em nuvem
com Microsoft Azure
Juarez Junior – juarez.junior@microsoft.com
Twitter / Medium – @juarezjunior
2. Java on Azure
• Microsoft’s Investment in Java
• Java on Azure
• Migrating Java Apps to Azure
• Tools for Java Developers
3. Java is widely used across Microsoft
Mojang’s Minecraft
• Hundreds of servers built in Java
• Client Java Edition is very popular
Android
• 50+ apps published by Microsoft in
Google Play Store
• New Surface Duo phone based on
Android OS
LinkedIn
• Over 1800+ Java microservices in production
Over 60+ Java open-source projects on GitHub
Azure
• Services dependent on Java include, Azure
HDInsight, Azure Databricks, and Azure Spring
Cloud, and internal control systems
Yammer
• Most of back-end implemented in Java
*Internal usage; does not include customer workloads
4. Community engagement
Fixes, performance
enhancements, and new ports
Toolkit and plug-ins to improve
Eclipse dev experience
Platinum sponsor and
project contributor
Support for popular Java
standards and projects
3.6M+ Java repositories hosted, free
support and resources for Java devs
Java extensions for Maven, Run/
Debug, Unit Testing, and more
Spring Cloud for Azure project
and managed service for
Spring Boot
5. Strong partner ecosystem
Solution templates for
WebLogic on Azure IaaS
Confluent Cloud with Azure
Portal and CLI integration
Jointly built and operated
service—Azure Spring Cloud
Redis Enterprise on Azure
managed infrastructure
OpenJDK support for
all LTS Java versions
IBM Cloud Pak for Data
in Azure Marketplace
Jointly supported JBoss EAP
on App Service* and VMs
Elastic Cloud on Azure
Marketplace
6. Java on Azure – Support Your Architecture
Microservices or
serverless
application
Parts of monolith
extracted
Monolith + new
microservices
Containerized Monolith
Monolith
7. Java on
Azure
Global infrastructure. Powered by 60+
worldwide regions.
Powerful managed services.
Differentiating services for compute,
database, messaging, security, machine
learning, IoT, and more.
Hybrid value proposition. Connect on-
premises systems to cloud with Active
Directory, integration solutions, and more.
Integrated developer tooling. Use popular
IDEs, frameworks, and CI/CD tools to interact
with Microsoft Azure.
8. Java on Azure
• Free Support for Java
• Provided by Microsoft Build of OpenJDK distribution
• 1st-class Java Support
• Azure Spring Cloud
• Azure App Service
• Azure Functions
• Spring on Azure integrations
• Azure Dev Spaces on AKS
• Azure DevOps
• Compute services (ACI, AKS, VMs, VMSS, etc.)
• Integrations with other Azure services (Event Hubs, Service Bus, Cosmos DB, data services, etc.)
• 1st-class Java Tooling Support
• Continued growth of Visual Studio Code adoption by Java developers
• Azure Toolkits (plugins) for Eclipse and IntelliJ IDEA IDEs
12. Authentication across cloud and on-
premises environments with Active
Directory
Azure has more regions than any
other cloud provider
More than 95% of the Fortune 500
run their applications on Azure
Only cloud platform with hyperscale
PostgreSQL database
Cloud platform with the most fully
managed hosting options for Java –
Tomcat, JBoss EAP, Spring Cloud
15. Modernize Java applications on Azure
*All product names, logos, brands, and trademarks are property of their respective owners.
Java application frameworks
Java EE/Jakarta EE application servers
Productivity
Control
Infrastructure-as-a-service Container platform-as-a-service Platform-as-a-service
Virtual Machines
Azure Kubernetes
Service
Red Hat
OpenShift
Java SE Tomcat JBoss EAP* Spring Boot
Azure App Service Azure Spring Cloud
Databases
Azure Database
for PostgreSQL
Azure Database
for MySQL
Azure Cache
for Redis
Azure SQL
Database
Azure
Cosmos DB
Tooling
IDEs
GitHub
Build tools
16. GitHub
Build Tools
Azure Container
Registry
Container PaaS
Azure
Kubernetes
Service
Azure
Red Hat
OpenShift
Azure Container
Instances
Platform
Development Tools
Modernize your Java applications using containers
Azure Arc
Management across environments
Active
Directory
Azure
Policy
Security
Center
Key
Vault
Azure
Advisor
Docker
IDEs
Cognitive
Services
Azure
Monitor
Service
Bus
17. Best practices from
of enterprise engagements
1000s
on-call support backed by
Kubernetes certified experts
24x7x365
Security experts focused on
your data security and privacy
3,500
Built-in
Best
practices
Enterprise
support
Multi-layer
Security
Kubernetes on Azure
Run Java in more regions
than any other cloud provider
18. Azure Red Hat OpenShift
In just minutes, deploy
enterprise-grade Red Hat
OpenShift clusters on Azure
Enterprise-grade operations, security and compliance
Deploy your business-critical apps with confidence with an
industry-leading SLA of 99.95% availability, with PCI DSS, ISO
27001, HITRUST, SOC 2 Type II, and FedRAMP certifications.
Empowering developers to innovate
Promote developer productivity with built-in CI/CD
pipelines, then easily connect your applications to hundreds
of Azure services such as MySQL, PostgreSQL, Redis, Cosmos
DB, and more.
Scale on your terms
Start a highly available cluster in a few minutes, then scale as
your application demand changes; plus, get your choice of
standard, high-memory, or high-CPU application nodes. Pay
through your Azure subscription.
Build, deploy and
scale Java apps
with confidence
19. Fully managed PaaS for Tomcat and JBoss EAP
Deploy applications the way you want – with Maven plugins,
from the command line, or from IntelliJ, Eclipse, or VS Code
Automatic updates and security patches for Tomcat
and JVM keep your applications secure
Built-in CI/CD integration and zero-downtime deployments
with deployment slots
Perform intelligent troubleshooting with App Service diagnostics
and optimize performance with Azure Monitor and App Insights
20. Spring is the most popular Java framework
Source: State of Spring 2020 Report - https://tanzu.vmware.com/content/ebooks/state-of-spring-2020
52%
21. Common challenges for Spring applications
Customersneed to manage infrastructure,updates, troubleshooting
High effort required to
manage cloud
infrastructure for Spring
Boot applications
Application lifecycle is
difficult to manage
Painful to troubleshoot
application issues
Spring
Cloud Apps
Spring Cloud
Components
Spring Cloud
Components
Cloud
Services
App
Consumers
Breaker
dashboard
Service
registry
Distributed
tracing
Config
dashboard
IoT
Mobile
Browser
API
Gateway
Microservices
Microservices
Microservices
Message brokers
Databases
22. More choices and full integration into Azure’s ecosystem and services
Fully managed
infrastructure
Built-in app
lifecycle
management
Ease of
monitoring
Enterprise ready
Azure Spring Cloud
Fully managed Spring Cloud service,jointly built and operatedwith VMware
23. Spring integration with Azure
Spring developers can leverage 30+ starters to connect to Azure services with a few lines of configuration and
minimal code changes
App Configuration
Event Hubs
Service Bus
Storage
Redis
Functions
Spring Cloud
SQL Database
MySQL
PostgreSQL
Maria DB
Cosmos DB
• SQL
• MongoDB
• Cassandra
• Gremlin
Spring Data
Active Directory (AAD)
AAD B2C
Spring Security
SQL Database
PostgreSQL
MySQL
R2DBC
Spring Cache
Redis Cache
Storage
Spring Resource
Spring Messaging
Service Bus
Micrometer
Monitor
24. Fully managed databases on Azure
Always up-to-date | Hybrid compatibility | High availability | Limitless scale | Low latency
In-memory data store
to power fast, scalable
applications
Fast NoSQL
database with open
APIs for any scale
Used by Microsoft Teams
to help scale to 75M+
daily active users
Enterprise-ready, fully managed,
and scalable open-source
databases
50k+ customers in 100+
countries, Azure is the only
cloud with Hyperscale PostgreSQL
Managed
intelligent SQL in
the cloud
Built-in AI and built-in high
availability maintain peak
performance and durability
with an SLA of up to 99.995%
Support rapid growth and innovate faster with secure, enterprise-grade, and fully managed
database services for your Java applications
25. Integration services on Azure
Seamlessly integrate applications, data, and processes for your enterprise
Connect your business-
critical Java apps
and services and
automate workflows
Simplify your event-driven
architectures with a single
service for event routing
Fully managed enterprise
messaging service with
native Java Message Service
(JMS) support
Streamline your hybrid and
multi-cloud environments
with a single place for
managing all your APIs
26. • Identify Java app type
• Assess portability
• In-place conversions, prior to migration
• Identify cloud destination
• Virtual machines
• Containers
• PaaS
• Use migration tools – ARM templates, GitHub samples & training
• Use step-by-step official migration guidance
• https://docs.microsoft.com/en-us/azure/java/migration-overview
Migration Path
28. Market context and customer benefits
Realize value by choosing Azure for your Javamodernization
55%
7x faster release cycles vs 10 years ago*
17% YoY increase in data breaches*
of developers use 5 or more tools in their
development process*
*Sources: GitLab 2018 Developer Survey; Forrester; Gartner; ID Theft Resource Center
29.
30. Build on your terms
Use tools your developers and operatorsare familiar with
IntelliJ Eclipse
Your favorite IDEs with seamless
Azure integration
Maven Gradle
Popular build automation tools
for Java developers
Jenkins
Popular
open-source
automation server
Terraform
Infra-as-code for
automated Azure
management
Automate your software workflows with GitHub
Actions. Integrate GitHub with Jenkins and Terraform
to automate Azure deployments.
Use plugins for Maven
and Gradle to natively
build and interact with
Azure services.
Use the Azure Toolkits for IntelliJ and
Eclipse to easily create, develop,
configure, test, and deploy highly
available and scalable Java apps to Azure.
GitHub
World’s largest
developer
community
VS Code
31. Microsoft has the tools developers love and enterprise
trust to keep them productive.
Code
from anywhere
Ship
from anywhere
Collaborate
from anywhere
#1 Most popular developer tool1 $1B annual cyber security spend
Securely access cloud-powered
development environments
from anywhere
Collaborate seamlessly as a
distributed development team
Securely deploy, monitor,
update and remediate your
apps from anywhere
60M+
Developers
2.7B minutes
in one day
32.
33. powerful toolkit
Velocity
56M+ developers Leaders in developer platform2
#1 developer tool1
Leaders in low-code
development platforms3
1: Stack Overflow: Stack Overflow Developer Survey, 2019
2: Forrester: Forrester Wave for Public Cloud Development and Infrastructure
Platforms, and, Public Cloud Development Platforms, Q1 2020
3: Forrester Wave for Low-Code Development Platforms, 2019
34.
35.
36. Resources – Java on Azure
Java on Azure Developer Hub
Migration Guidance
Azure Spring Cloud
Java App Service Linux
Data Services
Messaging Services
Containers on Azure
Azure Kubernetes Service
Azure VMs
Java on Azure Samples
37. Free Java on Azure courses @ Microsoft Learn
https://aka.ms/AAgzrm9
Access the link above or scan this QR code
to access our free technical courses @
Microsoft Learn!