SlideShare a Scribd company logo
SpringOne 2020
Accelerate Spring Apps to Cloud at Scale –
Discussion with Azure Spring Cloud Customers
Adib Saikali -- Principal Platform Architect, VMware @asaikali
Asir Selvasingh -- Principal PM Architect, Java on Azure, Microsoft @asirselvasingh
September 2020
+
©Microsoft Corporation
Azure
Adib Saikali
Principal Platform Architect
Adib is helping customers build
cloud native applications using
Spring Cloud.
Adib is a co-organizer of the
Toronto Java User Group and
Toronto Cloud Foundry Meetup
©Microsoft Corporation
Azure
Asir Selvasingh
Principal PM Architect
Java on Microsoft Azure
On-point for everything developers
need to build, migrate and scale Java
applications on Azure.
Started software engineering career in
the early days of Java, in 1995, and
built enterprise products, applications
and open source projects.
©Microsoft Corporation
Azure
Azure Spring Cloud - GA
A fully managed service for Spring Boot microservices
More choices and full integration into Azure’s ecosystem and services
Fully managed
infrastructure
Built-in app
lifecycle
management
Ease of
monitoring
Enterprise ready
©Microsoft Corporation
Azure
Fully Managed Infrastructure – Azure Spring Cloud
▪ Built-in native Spring Cloud
components
▪ Config Server
▪ Service Registry
▪ Distributed Tracing
▪ Circuit Breaker
(upcoming)
▪ Blue/Green for zero downtime
▪ Auto Horizontal Scale based
on metrics or schedule
▪ VNET (private network) to
secure your app and traffic
Azure Database
for MySQL
Azure Cosmos DB
Azure Cache
for Redis
User Git Repository
Azure Spring Cloud
agents
Azure Spring Cloud
VMware Tanzu
Build Service
Azure Kubernetes Service
Service
Binding
Config
Source
Service RuntimeUser Environment
App 1 App 2 App N Config Server Service Registry Lifecycle Mgmt.
Log Stream Data Encryption
App Resiliency
Azure DevOps
CI/CD
GitHub
Jenkins
Custom Domain Self-Diagnostics
Metrics Tracing Managed IdentitiesLogs Service Principals
Azure Monitor Azure Active Directory
Simplify your cloud development for Spring applications
Responsibilities
DIY with Spring
Boot
Azure Spring
Cloud Service
Application
iteration,
debugging
CI/CD
Build and
manage Clusters
Host Spring
Cloud
Middleware
Monitoring and
logging
Scaling
Patching
Support
Customer VMware Microsoft
Azure Database
for MySQL
Azure Cosmos DB
Azure Cache
for Redis
User Git Repository
Azure Spring Cloud
agents
Azure Spring Cloud
VMware Tanzu
Build Service
Azure Kubernetes Service
Service
Binding
Config
Source
Service RuntimeUser Environment
App 1 App 2 App N Config Server Service Registry Lifecycle Mgmt.
Log Stream Data Encryption
App Resiliency
Azure DevOps
CI/CD
GitHub
Jenkins
Custom Domain Self-Diagnostics
Metrics Tracing Managed IdentitiesLogs Service Principals
Azure Monitor Azure Active Directory
©Microsoft Corporation
Azure
Jonathan Jones
Technical Lead, Group Finance IT
Jonathan is currently the technical lead for the
Group Finance Target Architecture (GFTA)
programme, which is re-building Swiss Re's Group
Finance business area to be cloud native.
Before this Jonathan has held various lead Java
developer roles, all in the financial services sector.
©Microsoft Corporation
Azure
[Swiss Re Architecture]
• Cloudflare proxies requests to the Spring
Cloud Gateway application
• Spring Cloud Gateway routes to the back-end
services using the Eureka service registry
• Back-end services can call other back-end
services via Eureka look-ups
• The managed identities of the back-end
services are used to access Key Vault,
Microsoft Graph and to retrieve static content
from Azure Storage
• Azure Spring Cloud ensures logs and metrics
are sent to Log Analytics and Application
Insights, respectively
• Azure Database for PostgreSQL is accessed via
JDBC
Swiss Re - Azure Spring Cloud Architecture
©Microsoft Corporation
Azure
Armando Guzman
Principal Software Engineer
Armando is modernizing and securing
the technology used by 131 grocery
stores employing over 10,000 team
members.
He is responsible for the approach,
development, and implementation of
the technical solution for both
eCommerce and overall online digital
presence leveraging Azure.
©Microsoft Corporation
Azure
©Microsoft Corporation
Azure
Peter Verstraete
Java Software Crafter
Peter is lead developer of a team
responsible for delivering a major new
application that will support an important
Liantis business process. And this with a
clear focus on realizing a solution which is
ready to be hosted on the Azure platform.
©Microsoft Corporation
Azure
Tell us about your workflow. What tools are
you using and how often do you deploy?
How do you keep your end users happy and
achieve SLOs? How do you fix issues?
What were your security considerations in
using Azure Spring Cloud?
What does cloud native software
development mean to you and what advice
do you have for Spring devs considering
cloud?
©Microsoft Corporation
Azure
Build your cloud-native solutions today!
Get started --
o Deploy Spring apps to Azure Spring Cloud using quickstart
o Learn using a self-paced workshop on GitHub
o Learn more about implementing solutions on Azure Spring Cloud
o Migrate your Spring Boot, Spring Cloud and Tomcat apps to Azure Spring Cloud
o Wire Spring apps to interact with Azure services
o For feedback and questions, please reach out to spring-team@microsoft.com
©Microsoft Corporation
Azure
Related Sessions @ SpringOne
Bootiful Azure Spring Cloud
By Josh Long (Spring Developer Advocate, VMware) and Julien Dubois (Cloud
Developer Advocate, Microsoft)
Supercharge Your Spring Boot Apps!
By Kylie Liang (Principal PM Lead, Microsoft) and Rory Preddy (Senior Cloud
Advocate, Microsoft)
Accelerate Spring Apps to Cloud at Scale -- Discussion with Azure Spring
Cloud Customers
By Adib Saikali (Principal Platform Architect, VMware) and Asir Selvasingh
(Principal PM Architect, Java on Microsoft Azure)
Visit the Microsoft Azure sponsor page to access resources and request a
meeting with Azure and Spring experts
Discussion Questions and Answers
Tell us about your workflow. What tools are
you using and how often do you deploy?
Swiss Re, Raley’s and Liantis
©Microsoft Corporation
Azure
Jonathan Jones, Swiss Re
• All our Java developers work with IntelliJ. Our Angular developers mainly use VS Code. We use Azure DevOps, so all of
our git repositories; work items and pipelines are hosted there. Our software is built using Maven.
• In Azure DevOps we use Azure Pipelines (so, maybe regrettably, we have lots of YAML). We separate Continuous
Integration and Deployment into separate pipelines. So our CI pipelines execute with each commit and run all the unit
tests and integration tests, etc. The pipeline artifact produced by that pipeline is then automatically deployed to our
development subscription by its respective CD pipeline.
• One thing that is extremely important to us is automated testing. We practice Test Driven Development and have the
basic principal that you need to be able to write good tests with good assertions for anything you deliver. With Spring
Boot we have an excellent framework that supports this strategy. We are productive thanks to the fact we have a lot of
very experienced and capable Java developers in our teams.
• Our infrastructure is deployed via the terraform task in Azure DevOps and we were happy that a provider was available
early for Azure Spring Cloud.
©Microsoft Corporation
Azure
Armando Guzman, Raley’s
• Raley’s uses Jira for Agile Planning, Terraform for Infrastructure as Code, IntelliJ as an IDE, Azure DevOps for source
control and CI/CD. Our Java applications are built using Maven and stored in Azure Artifacts.
• Our pipelines in Azure DevOps are a mixture of classic and YAML pipelines but we are migrating all builds to be YAML
based. We are also investigating migrating from classic releases to YAML.
• Developers can deploy to our Development Environment from topic branches. Deployments to our Staging Environment
are automatic and triggered by a pull request merging to master. Deployments to Production are also done with
Pipelines but are triggered by a product owner approving the release.
• Our infrastructure is deployed using Terraform in Azure DevOps pipelines and we rely on the Azure providers. We have
separate repos for Terraform modules we want to reuse and separate pipelines for each logical resource in Azure. For
example we have a pipeline each for API Manager, Application Gateway and Azure Spring Cloud.
• Raley’s is an Azure shop, and we continue to find Azure meets all our infrastructure and development needs.
©Microsoft Corporation
Azure
Peter Verstraete, Liantis
• Mature software factory used by 15+ agile development teams, with:
o IntelliJ for both Java and Angular development, Maven as build tool.
o Bitbucket (GIT) as VCS, using GIT Flow workflow practices (PR's to ensure code quality).
o Jenkins with CI jobs (including multibranch pipelines), custom deploy jobs, automation tool to
generate/manage jobs
o SonarQube for additional quality assurance.
o Nexus as repository manager.
o Integration between JIRA, Bitbucket and Jenkins.
• Deploy to PROD: responsibility of agile development team
• Azure provides building block that help to extend our current software factory
• POC: Jenkins 'Infrastructure as Code' pipeline to create/destroy an Azure Spring Cloud setup.
How do keep your end users happy and
achieve SLOs? How do you fix issues?
Liantis, Swiss Re and Raley’s
©Microsoft Corporation
Azure
Peter Verstraete, Liantis
• When it comes to keeping the end users happy, dynamic scaling to handle peak loads is very important. Azure
Spring Cloud covers this prerequisite by providing the Auto Scaling in/out feature (now in preview). We’ve
been able to evaluate this feature successfully by doing several load tests with various ramp up/down
scenarios. One of the nice things is you can scale up a service based on metrics of another service (or even
another resource), which gives the possibility to anticipate on coming load to the first service.
• What is appealing about application monitoring is that everything you need is available through the Azure
portal:
o Distributed tracing with Application map as a starting point, to investigate performance/failures.
o Drilldown to transaction details.
o Access to logs.
o Performance monitoring via metrics.
o Currently we are further looking into the possibilities of alerts and custom dashboards.
o The integration of log streaming into the Azure Toolkit for IntelliJ plugin is very helpful during functional
testing of deployed services.
©Microsoft Corporation
Azure
Jonathan Jones, Swiss Re
• At all times, but especially during financial closing periods it's important we run a stable, accurate and performant service
for our business.
• We expose Spring Boot actuator endpoints on all our services, including the Spring Cloud Gateway. These are
automatically monitored, and any failures raise tickets in our incident management system.
• The application map feature of Application Insights provides distributed tracing and enables us to get a mostly clear
picture of how applications inside our instance are working with each other. We are looking forward to Azure Spring
Cloud implementing the latest version of the App Insights Java agent, so we get monitoring of the JDBC calls too.
• Recently we have started to integrate the Azure Spring Cloud horizontal autoscale. Some of our services during financial
closing periods get particularly busy and the ability to adjust the number of instances based on metrics (like heap size,
number of requests) should enable us to meet peak demand without manual work or over provisioning of resources.
• We also have the application logs sent to a Log Analytics workspace and to have more real time feedback the Log Stream
feature of Azure Spring Cloud is used often, especially in development environments.
• Ultimately, we keep our end users happy by running a reliable and performant system but also by providing an
environment where we gain the businesses trust to allow a regular deployment of features, which work as intended.
©Microsoft Corporation
Azure
Armando Guzman, Raley’s
• As part of the Unified Commerce team I am responsible for enrollment in our Loyalty program, Order Processing and
Personalized Offers. All these services must remain stable and online 24 hours a day. It’s amazing how many customers
shop for groceries in the middle of the night!
• We also have reoccurring events, product offers, $5 Mondays. These events drive customers to our site on a regular basis
resulting in predictable peaks. These known events are monitored closely, and we use Azure Monitor to send alerts
whenever thresholds are exceeded. Currently we ensure enough headroom is always available to handle our peaks, but
we are investigating Azure Spring Cloud autoscaling and moving to Application Gateway 2.0 since that also supports
autoscaling.
• Our developers are very happy with Log Stream and Log Aggregation in Azure Spring Cloud to help debug and pinpoint
problems quickly. All defect fixes must be peer reviewed using Pull Requests, deployed to our staging environment and
communicated before deploying to production.
• Azure Spring Cloud has allowed Raley’s to quickly develop and deploy new apps while exceeding customer and developer
expectations.
What were your security considerations in
using Azure Spring Cloud?
Raley’s, Liantis and Swiss Re
©Microsoft Corporation
Azure
Armando Guzman, Raley’s
• A major component of security involves protecting the network and zero trust. Azure Spring Cloud supports deploying to
private VNets allowing Raley’s to utilize Azure API Manager and Azure Application Gateway to protect our services from
outside and inside the network.
• Azure Spring Cloud also natively supports Azure Key Vault. Raley’s was able to move application secrets to Azure Key
Vault. After adopting Azure Key Vault for our Spring Applications we also migrated our Azure DevOps Pipeline secrets to
Azure Key Vault.
• Azure Spring Cloud also supports Spring Configuration Server allowing us to keep our configuration in git repos and
update configuration using Pull Requests and Azure Pipelines.
• Azure Spring Cloud allows us to meet and improve on our security posture while providing peace of mind that our
services are secure.
©Microsoft Corporation
Azure
Peter Verstraete, Liantis
• When it comes to identity and access management, Liantis has a solution in place based on one of
the leading IAM providers. Using a custom Spring Boot starter, integrating this solution with Spring
Security is a smooth process. It works perfectly in services deployed in Azure Spring Cloud.
• For now secrets are stored in configuration. Although they are protected by encryption, we decided
to move our secrets to Azure Key Vault. This makes the management of secrets much easier.
At Liantis we have company-wide and component-specific secrets. We decided to store the different
kind of secrets in separate Azure Key Vaults. Recently, Microsoft released a new version of its Key
Vault SpringBoot starter which supports such an approach.
©Microsoft Corporation
Azure
Jonathan Jones, Swiss Re
• Clearly in a move to the public cloud security is one of our primary considerations. Swiss Re are following the CSA CCM
(Cloud Security Alliance, Cloud Controls Matrix) and anything we do has to be compliant with that. All the Spring Boot
applications we deploy are checked for CVEs and we simply can't deploy the software should there be any known
vulnerabilities. We also have automated smoke tests after new deployments, which check that key aspects of our
security policy have not been mutated by the deployment.
• By using a PaaS like Azure Spring Cloud we try to lower our attack surface by delegating activities like network
management and compute management to Microsoft. The less moving parts we must configure and maintain, the
better. This is demonstrated further by Microsoft taking responsibility for patching the Java versions and exposing a
fine-grained permission model for Azure Spring Cloud.
• The system assigned managed identity Azure Spring Cloud provides to each application is important, as we use this to
bootstrap access to Azure Key Vaults, access Microsoft Graph and authenticate to where we store the static content in
Azure Storage.
• Important as well is we minimize the exposure of our applications, so all the back-end services run on private IP
addresses. All ingress comes through our Spring Cloud Gateway application which is shielded by Cloudflare; whose
capabilities include a Web Application Firewall (WAF).
What does cloud native software
development mean to you and what advice
do you have for Spring devs considering
cloud?
Swiss Re, Raley’s and Liantis
©Microsoft Corporation
Azure
Jonathan Jones, Swiss Re
• Well firstly for me cloud native doesn't necessarily mean microservices. Our teams are building services that are decomposed to a level
which makes sense to us. We want to take advantage of the public cloud, but we want to maximize the time we spend on interacting with
our business and delivering value through software. "Cloud native" ultimately must provide tangible results which our business sponsors
recognize. Clearly platforms like Azure Spring Cloud help, as they take away implementation and management effort which is not our core
competency.
• In terms of what we do:
1) we try and give our product teams autonomy and ownership. Self-service is a critical factor – we have to be able to make progress
without waiting for service requests and long fulfilment chains
2) We remove as much friction as possible from the development process
3) We have no magic. Everything we create and deploy must have a representation in git.
4) All of our services expose clean and consistent APIs
5) We never compromise on security. So we create a baseline, which we maintain and improve over time
6) We automate the monitoring of our software as much as possible and we try to automate the response to that monitoring as much
as possible
• I think one piece of advice that has worked well for us is whether you target the cloud or not is to get the basics right i.e. start off from day
one doing all the "right" things i.e. everything in git, automated tests, automated builds, automated deployments.
©Microsoft Corporation
Azure
Armando Guzman, Raley’s
• Cloud native to me means creating applications that can take advantage of Cloud Services. Cloud native software
development must facilitate rapid development, CI/CD, and autoscaling to name a few key features. Cloud native
software development allows developers to focus on the application logic, innovate and quickly bring value to the
business team.
• Azure Spring Cloud supports all these feature while eliminating the need to spend infrastructure and development
resources deploying, configuring and testing to ensure features are setup correctly.
• Adopting Azure Spring Cloud has made our developers more productive, allowed them to focus on the application and
business logic without needing to worry about the underlying infrastructure all while adding in demand technologies and
skills to their resumes!
• Adopting Azure Spring Cloud shifts the management of Kubernetes, OS patches and updates to the experts at Azure
making our development and business teams more productive.
©Microsoft Corporation
Azure
Peter Verstraete, Liantis
• The Spring Framework together with Spring Boot and Spring Cloud helps to improve the application or microservice
development process. Different kind of boilerplate aspects are taken care of. And the frameworks help developers
to use architectural principles, design patterns, enterprise integration patterns or distributed system patterns more
easily.
A supporting platform/ecosystem (with capabilities such as DevOps pipelines, centralized logging & monitoring,
security, discovery, centralized configuration, scaling, ...) is a must:
o to streamline the development process.
o to act as the hosting platform for the developed microservices.
• By adding Azure and Azure Spring Cloud to the trio Spring/Boot/Cloud, you remove a major burden from your IT
organization to setup/maintain such a supporting ecosystem.
• It allows our agile development teams to focus on producing business value/functionality without worries.
© Copyright Microsoft Corporation. All rights reserved.
Thank you, everyone!!
+

More Related Content

What's hot

Spring Boot Whirlwind Tour
Spring Boot Whirlwind TourSpring Boot Whirlwind Tour
Spring Boot Whirlwind Tour
VMware Tanzu
 
Walking Through Spring Cloud Data Flow
Walking Through Spring Cloud Data FlowWalking Through Spring Cloud Data Flow
Walking Through Spring Cloud Data Flow
VMware Tanzu
 
Unleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
Unleash the True Power of Spring Cloud: Learn How to Customize Spring CloudUnleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
Unleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
VMware Tanzu
 
What’s New in Spring Data MongoDB
What’s New in Spring Data MongoDBWhat’s New in Spring Data MongoDB
What’s New in Spring Data MongoDB
VMware Tanzu
 
Not Just Initializing
Not Just InitializingNot Just Initializing
Not Just Initializing
VMware Tanzu
 
Spring Boot Loves K8s
Spring Boot Loves K8sSpring Boot Loves K8s
Spring Boot Loves K8s
VMware Tanzu
 
Introduction to Spring Cloud
Introduction to Spring Cloud           Introduction to Spring Cloud
Introduction to Spring Cloud
VMware Tanzu
 
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
VMware Tanzu
 
Connecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
Connecting Spring Apps to Distributed SQL Clusters Running in KubernetesConnecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
Connecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
VMware Tanzu
 
Functions: Implement Once, Execute Anywhere!
Functions: Implement Once, Execute Anywhere!Functions: Implement Once, Execute Anywhere!
Functions: Implement Once, Execute Anywhere!
VMware Tanzu
 
Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - SpringOne 2020Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - SpringOne 2020
Matt Raible
 
Developers Are Users, Too
Developers Are Users, TooDevelopers Are Users, Too
Developers Are Users, Too
VMware Tanzu
 
Building Kubernetes images at scale with Tanzu Build Service
Building Kubernetes images at scale with Tanzu Build ServiceBuilding Kubernetes images at scale with Tanzu Build Service
Building Kubernetes images at scale with Tanzu Build Service
VMware Tanzu
 
Observability Enhancements in Steeltoe
Observability Enhancements in Steeltoe Observability Enhancements in Steeltoe
Observability Enhancements in Steeltoe
VMware Tanzu
 
Going Serverless Using the Spring Framework Ecosystem
Going Serverless Using the Spring Framework EcosystemGoing Serverless Using the Spring Framework Ecosystem
Going Serverless Using the Spring Framework Ecosystem
VMware Tanzu
 
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
VMware Tanzu
 
Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020
VMware Tanzu
 
Spring Tools 4: Bootiful Spring Tooling for the Masses
Spring Tools 4: Bootiful Spring Tooling for the MassesSpring Tools 4: Bootiful Spring Tooling for the Masses
Spring Tools 4: Bootiful Spring Tooling for the Masses
VMware Tanzu
 
Pivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First LookPivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First Look
VMware Tanzu
 
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
 All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014) All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
VMware Tanzu
 

What's hot (20)

Spring Boot Whirlwind Tour
Spring Boot Whirlwind TourSpring Boot Whirlwind Tour
Spring Boot Whirlwind Tour
 
Walking Through Spring Cloud Data Flow
Walking Through Spring Cloud Data FlowWalking Through Spring Cloud Data Flow
Walking Through Spring Cloud Data Flow
 
Unleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
Unleash the True Power of Spring Cloud: Learn How to Customize Spring CloudUnleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
Unleash the True Power of Spring Cloud: Learn How to Customize Spring Cloud
 
What’s New in Spring Data MongoDB
What’s New in Spring Data MongoDBWhat’s New in Spring Data MongoDB
What’s New in Spring Data MongoDB
 
Not Just Initializing
Not Just InitializingNot Just Initializing
Not Just Initializing
 
Spring Boot Loves K8s
Spring Boot Loves K8sSpring Boot Loves K8s
Spring Boot Loves K8s
 
Introduction to Spring Cloud
Introduction to Spring Cloud           Introduction to Spring Cloud
Introduction to Spring Cloud
 
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
 
Connecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
Connecting Spring Apps to Distributed SQL Clusters Running in KubernetesConnecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
Connecting Spring Apps to Distributed SQL Clusters Running in Kubernetes
 
Functions: Implement Once, Execute Anywhere!
Functions: Implement Once, Execute Anywhere!Functions: Implement Once, Execute Anywhere!
Functions: Implement Once, Execute Anywhere!
 
Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - SpringOne 2020Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - SpringOne 2020
 
Developers Are Users, Too
Developers Are Users, TooDevelopers Are Users, Too
Developers Are Users, Too
 
Building Kubernetes images at scale with Tanzu Build Service
Building Kubernetes images at scale with Tanzu Build ServiceBuilding Kubernetes images at scale with Tanzu Build Service
Building Kubernetes images at scale with Tanzu Build Service
 
Observability Enhancements in Steeltoe
Observability Enhancements in Steeltoe Observability Enhancements in Steeltoe
Observability Enhancements in Steeltoe
 
Going Serverless Using the Spring Framework Ecosystem
Going Serverless Using the Spring Framework EcosystemGoing Serverless Using the Spring Framework Ecosystem
Going Serverless Using the Spring Framework Ecosystem
 
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
 
Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020
 
Spring Tools 4: Bootiful Spring Tooling for the Masses
Spring Tools 4: Bootiful Spring Tooling for the MassesSpring Tools 4: Bootiful Spring Tooling for the Masses
Spring Tools 4: Bootiful Spring Tooling for the Masses
 
Pivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First LookPivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First Look
 
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
 All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014) All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
 

Similar to Accelerate Spring Apps to Cloud at Scale—Discussion with Azure Spring Cloud Customers

Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft Azure
David J Rosenthal
 
[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure
Korkrid Akepanidtaworn
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
Cambay Digital
 
Java on Your Terms with Azure
Java on Your Terms with AzureJava on Your Terms with Azure
Java on Your Terms with Azure
Edward Burns
 
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
Juarez Junior
 
Lightweight Java in the Cloud
Lightweight Java in the CloudLightweight Java in the Cloud
Lightweight Java in the Cloud
Bruno Borges
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
Callon Campbell
 
Accelerate Sitecore DevOps on Microsoft Azure
Accelerate Sitecore DevOps on Microsoft AzureAccelerate Sitecore DevOps on Microsoft Azure
Accelerate Sitecore DevOps on Microsoft Azure
Perficient, Inc.
 
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
jaxconf
 
DevOps lagos meetup
DevOps lagos meetupDevOps lagos meetup
DevOps lagos meetup
Ewere Diagboya
 
App Modernization Pitch Deck.pptx
App Modernization Pitch Deck.pptxApp Modernization Pitch Deck.pptx
App Modernization Pitch Deck.pptx
MONISH407209
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Callon Campbell
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
Callon Campbell
 
Resume
ResumeResume
[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps
Naoki (Neo) SATO
 
Md Zahir Uddin
Md Zahir UddinMd Zahir Uddin
Md Zahir Uddin
Md Zahir Uddin
 
Essentials of Hosting Platforms.pptx
Essentials of Hosting Platforms.pptxEssentials of Hosting Platforms.pptx
Essentials of Hosting Platforms.pptx
Atharva Joshi
 
XebiaLabs Demo: Application Release Automation with Deployit
XebiaLabs Demo: Application Release Automation with DeployitXebiaLabs Demo: Application Release Automation with Deployit
XebiaLabs Demo: Application Release Automation with DeployitXebiaLabs
 
Pivotal spring boot-cloud workshop
Pivotal   spring boot-cloud workshopPivotal   spring boot-cloud workshop
Pivotal spring boot-cloud workshop
Sufyaan Kazi
 
Sam segal resume
Sam segal resumeSam segal resume
Sam segal resume
samuel segal
 

Similar to Accelerate Spring Apps to Cloud at Scale—Discussion with Azure Spring Cloud Customers (20)

Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft Azure
 
[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
 
Java on Your Terms with Azure
Java on Your Terms with AzureJava on Your Terms with Azure
Java on Your Terms with Azure
 
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
[pt-BR] - Cloud Conference Day - Agilidade para disponibilização de aplicaçõe...
 
Lightweight Java in the Cloud
Lightweight Java in the CloudLightweight Java in the Cloud
Lightweight Java in the Cloud
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
 
Accelerate Sitecore DevOps on Microsoft Azure
Accelerate Sitecore DevOps on Microsoft AzureAccelerate Sitecore DevOps on Microsoft Azure
Accelerate Sitecore DevOps on Microsoft Azure
 
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
Amazon Web Services and PaaS - Enterprise Java for the Cloud Era? - Mark Pric...
 
DevOps lagos meetup
DevOps lagos meetupDevOps lagos meetup
DevOps lagos meetup
 
App Modernization Pitch Deck.pptx
App Modernization Pitch Deck.pptxApp Modernization Pitch Deck.pptx
App Modernization Pitch Deck.pptx
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
 
Resume
ResumeResume
Resume
 
[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps[JAZUG Tohoku Azure DevOps] Azure DevOps
[JAZUG Tohoku Azure DevOps] Azure DevOps
 
Md Zahir Uddin
Md Zahir UddinMd Zahir Uddin
Md Zahir Uddin
 
Essentials of Hosting Platforms.pptx
Essentials of Hosting Platforms.pptxEssentials of Hosting Platforms.pptx
Essentials of Hosting Platforms.pptx
 
XebiaLabs Demo: Application Release Automation with Deployit
XebiaLabs Demo: Application Release Automation with DeployitXebiaLabs Demo: Application Release Automation with Deployit
XebiaLabs Demo: Application Release Automation with Deployit
 
Pivotal spring boot-cloud workshop
Pivotal   spring boot-cloud workshopPivotal   spring boot-cloud workshop
Pivotal spring boot-cloud workshop
 
Sam segal resume
Sam segal resumeSam segal resume
Sam segal resume
 

More from VMware Tanzu

Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14
VMware Tanzu
 
What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
VMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
VMware Tanzu
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
VMware Tanzu
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
VMware Tanzu
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
VMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
VMware Tanzu
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
VMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
VMware Tanzu
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
VMware Tanzu
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
VMware Tanzu
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
VMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
VMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
VMware Tanzu
 

More from VMware Tanzu (20)

Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14
 
What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 

Recently uploaded

Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
Sharepoint Designs
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
Jelle | Nordend
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 

Recently uploaded (20)

Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 

Accelerate Spring Apps to Cloud at Scale—Discussion with Azure Spring Cloud Customers

  • 1. SpringOne 2020 Accelerate Spring Apps to Cloud at Scale – Discussion with Azure Spring Cloud Customers Adib Saikali -- Principal Platform Architect, VMware @asaikali Asir Selvasingh -- Principal PM Architect, Java on Azure, Microsoft @asirselvasingh September 2020 +
  • 2. ©Microsoft Corporation Azure Adib Saikali Principal Platform Architect Adib is helping customers build cloud native applications using Spring Cloud. Adib is a co-organizer of the Toronto Java User Group and Toronto Cloud Foundry Meetup
  • 3. ©Microsoft Corporation Azure Asir Selvasingh Principal PM Architect Java on Microsoft Azure On-point for everything developers need to build, migrate and scale Java applications on Azure. Started software engineering career in the early days of Java, in 1995, and built enterprise products, applications and open source projects.
  • 4. ©Microsoft Corporation Azure Azure Spring Cloud - GA A fully managed service for Spring Boot microservices More choices and full integration into Azure’s ecosystem and services Fully managed infrastructure Built-in app lifecycle management Ease of monitoring Enterprise ready
  • 5. ©Microsoft Corporation Azure Fully Managed Infrastructure – Azure Spring Cloud ▪ Built-in native Spring Cloud components ▪ Config Server ▪ Service Registry ▪ Distributed Tracing ▪ Circuit Breaker (upcoming) ▪ Blue/Green for zero downtime ▪ Auto Horizontal Scale based on metrics or schedule ▪ VNET (private network) to secure your app and traffic Azure Database for MySQL Azure Cosmos DB Azure Cache for Redis User Git Repository Azure Spring Cloud agents Azure Spring Cloud VMware Tanzu Build Service Azure Kubernetes Service Service Binding Config Source Service RuntimeUser Environment App 1 App 2 App N Config Server Service Registry Lifecycle Mgmt. Log Stream Data Encryption App Resiliency Azure DevOps CI/CD GitHub Jenkins Custom Domain Self-Diagnostics Metrics Tracing Managed IdentitiesLogs Service Principals Azure Monitor Azure Active Directory
  • 6. Simplify your cloud development for Spring applications Responsibilities DIY with Spring Boot Azure Spring Cloud Service Application iteration, debugging CI/CD Build and manage Clusters Host Spring Cloud Middleware Monitoring and logging Scaling Patching Support Customer VMware Microsoft Azure Database for MySQL Azure Cosmos DB Azure Cache for Redis User Git Repository Azure Spring Cloud agents Azure Spring Cloud VMware Tanzu Build Service Azure Kubernetes Service Service Binding Config Source Service RuntimeUser Environment App 1 App 2 App N Config Server Service Registry Lifecycle Mgmt. Log Stream Data Encryption App Resiliency Azure DevOps CI/CD GitHub Jenkins Custom Domain Self-Diagnostics Metrics Tracing Managed IdentitiesLogs Service Principals Azure Monitor Azure Active Directory
  • 7. ©Microsoft Corporation Azure Jonathan Jones Technical Lead, Group Finance IT Jonathan is currently the technical lead for the Group Finance Target Architecture (GFTA) programme, which is re-building Swiss Re's Group Finance business area to be cloud native. Before this Jonathan has held various lead Java developer roles, all in the financial services sector.
  • 8. ©Microsoft Corporation Azure [Swiss Re Architecture] • Cloudflare proxies requests to the Spring Cloud Gateway application • Spring Cloud Gateway routes to the back-end services using the Eureka service registry • Back-end services can call other back-end services via Eureka look-ups • The managed identities of the back-end services are used to access Key Vault, Microsoft Graph and to retrieve static content from Azure Storage • Azure Spring Cloud ensures logs and metrics are sent to Log Analytics and Application Insights, respectively • Azure Database for PostgreSQL is accessed via JDBC Swiss Re - Azure Spring Cloud Architecture
  • 9. ©Microsoft Corporation Azure Armando Guzman Principal Software Engineer Armando is modernizing and securing the technology used by 131 grocery stores employing over 10,000 team members. He is responsible for the approach, development, and implementation of the technical solution for both eCommerce and overall online digital presence leveraging Azure.
  • 11. ©Microsoft Corporation Azure Peter Verstraete Java Software Crafter Peter is lead developer of a team responsible for delivering a major new application that will support an important Liantis business process. And this with a clear focus on realizing a solution which is ready to be hosted on the Azure platform.
  • 13. Tell us about your workflow. What tools are you using and how often do you deploy?
  • 14. How do you keep your end users happy and achieve SLOs? How do you fix issues?
  • 15. What were your security considerations in using Azure Spring Cloud?
  • 16. What does cloud native software development mean to you and what advice do you have for Spring devs considering cloud?
  • 17. ©Microsoft Corporation Azure Build your cloud-native solutions today! Get started -- o Deploy Spring apps to Azure Spring Cloud using quickstart o Learn using a self-paced workshop on GitHub o Learn more about implementing solutions on Azure Spring Cloud o Migrate your Spring Boot, Spring Cloud and Tomcat apps to Azure Spring Cloud o Wire Spring apps to interact with Azure services o For feedback and questions, please reach out to spring-team@microsoft.com
  • 18. ©Microsoft Corporation Azure Related Sessions @ SpringOne Bootiful Azure Spring Cloud By Josh Long (Spring Developer Advocate, VMware) and Julien Dubois (Cloud Developer Advocate, Microsoft) Supercharge Your Spring Boot Apps! By Kylie Liang (Principal PM Lead, Microsoft) and Rory Preddy (Senior Cloud Advocate, Microsoft) Accelerate Spring Apps to Cloud at Scale -- Discussion with Azure Spring Cloud Customers By Adib Saikali (Principal Platform Architect, VMware) and Asir Selvasingh (Principal PM Architect, Java on Microsoft Azure) Visit the Microsoft Azure sponsor page to access resources and request a meeting with Azure and Spring experts
  • 20. Tell us about your workflow. What tools are you using and how often do you deploy? Swiss Re, Raley’s and Liantis
  • 21. ©Microsoft Corporation Azure Jonathan Jones, Swiss Re • All our Java developers work with IntelliJ. Our Angular developers mainly use VS Code. We use Azure DevOps, so all of our git repositories; work items and pipelines are hosted there. Our software is built using Maven. • In Azure DevOps we use Azure Pipelines (so, maybe regrettably, we have lots of YAML). We separate Continuous Integration and Deployment into separate pipelines. So our CI pipelines execute with each commit and run all the unit tests and integration tests, etc. The pipeline artifact produced by that pipeline is then automatically deployed to our development subscription by its respective CD pipeline. • One thing that is extremely important to us is automated testing. We practice Test Driven Development and have the basic principal that you need to be able to write good tests with good assertions for anything you deliver. With Spring Boot we have an excellent framework that supports this strategy. We are productive thanks to the fact we have a lot of very experienced and capable Java developers in our teams. • Our infrastructure is deployed via the terraform task in Azure DevOps and we were happy that a provider was available early for Azure Spring Cloud.
  • 22. ©Microsoft Corporation Azure Armando Guzman, Raley’s • Raley’s uses Jira for Agile Planning, Terraform for Infrastructure as Code, IntelliJ as an IDE, Azure DevOps for source control and CI/CD. Our Java applications are built using Maven and stored in Azure Artifacts. • Our pipelines in Azure DevOps are a mixture of classic and YAML pipelines but we are migrating all builds to be YAML based. We are also investigating migrating from classic releases to YAML. • Developers can deploy to our Development Environment from topic branches. Deployments to our Staging Environment are automatic and triggered by a pull request merging to master. Deployments to Production are also done with Pipelines but are triggered by a product owner approving the release. • Our infrastructure is deployed using Terraform in Azure DevOps pipelines and we rely on the Azure providers. We have separate repos for Terraform modules we want to reuse and separate pipelines for each logical resource in Azure. For example we have a pipeline each for API Manager, Application Gateway and Azure Spring Cloud. • Raley’s is an Azure shop, and we continue to find Azure meets all our infrastructure and development needs.
  • 23. ©Microsoft Corporation Azure Peter Verstraete, Liantis • Mature software factory used by 15+ agile development teams, with: o IntelliJ for both Java and Angular development, Maven as build tool. o Bitbucket (GIT) as VCS, using GIT Flow workflow practices (PR's to ensure code quality). o Jenkins with CI jobs (including multibranch pipelines), custom deploy jobs, automation tool to generate/manage jobs o SonarQube for additional quality assurance. o Nexus as repository manager. o Integration between JIRA, Bitbucket and Jenkins. • Deploy to PROD: responsibility of agile development team • Azure provides building block that help to extend our current software factory • POC: Jenkins 'Infrastructure as Code' pipeline to create/destroy an Azure Spring Cloud setup.
  • 24. How do keep your end users happy and achieve SLOs? How do you fix issues? Liantis, Swiss Re and Raley’s
  • 25. ©Microsoft Corporation Azure Peter Verstraete, Liantis • When it comes to keeping the end users happy, dynamic scaling to handle peak loads is very important. Azure Spring Cloud covers this prerequisite by providing the Auto Scaling in/out feature (now in preview). We’ve been able to evaluate this feature successfully by doing several load tests with various ramp up/down scenarios. One of the nice things is you can scale up a service based on metrics of another service (or even another resource), which gives the possibility to anticipate on coming load to the first service. • What is appealing about application monitoring is that everything you need is available through the Azure portal: o Distributed tracing with Application map as a starting point, to investigate performance/failures. o Drilldown to transaction details. o Access to logs. o Performance monitoring via metrics. o Currently we are further looking into the possibilities of alerts and custom dashboards. o The integration of log streaming into the Azure Toolkit for IntelliJ plugin is very helpful during functional testing of deployed services.
  • 26. ©Microsoft Corporation Azure Jonathan Jones, Swiss Re • At all times, but especially during financial closing periods it's important we run a stable, accurate and performant service for our business. • We expose Spring Boot actuator endpoints on all our services, including the Spring Cloud Gateway. These are automatically monitored, and any failures raise tickets in our incident management system. • The application map feature of Application Insights provides distributed tracing and enables us to get a mostly clear picture of how applications inside our instance are working with each other. We are looking forward to Azure Spring Cloud implementing the latest version of the App Insights Java agent, so we get monitoring of the JDBC calls too. • Recently we have started to integrate the Azure Spring Cloud horizontal autoscale. Some of our services during financial closing periods get particularly busy and the ability to adjust the number of instances based on metrics (like heap size, number of requests) should enable us to meet peak demand without manual work or over provisioning of resources. • We also have the application logs sent to a Log Analytics workspace and to have more real time feedback the Log Stream feature of Azure Spring Cloud is used often, especially in development environments. • Ultimately, we keep our end users happy by running a reliable and performant system but also by providing an environment where we gain the businesses trust to allow a regular deployment of features, which work as intended.
  • 27. ©Microsoft Corporation Azure Armando Guzman, Raley’s • As part of the Unified Commerce team I am responsible for enrollment in our Loyalty program, Order Processing and Personalized Offers. All these services must remain stable and online 24 hours a day. It’s amazing how many customers shop for groceries in the middle of the night! • We also have reoccurring events, product offers, $5 Mondays. These events drive customers to our site on a regular basis resulting in predictable peaks. These known events are monitored closely, and we use Azure Monitor to send alerts whenever thresholds are exceeded. Currently we ensure enough headroom is always available to handle our peaks, but we are investigating Azure Spring Cloud autoscaling and moving to Application Gateway 2.0 since that also supports autoscaling. • Our developers are very happy with Log Stream and Log Aggregation in Azure Spring Cloud to help debug and pinpoint problems quickly. All defect fixes must be peer reviewed using Pull Requests, deployed to our staging environment and communicated before deploying to production. • Azure Spring Cloud has allowed Raley’s to quickly develop and deploy new apps while exceeding customer and developer expectations.
  • 28. What were your security considerations in using Azure Spring Cloud? Raley’s, Liantis and Swiss Re
  • 29. ©Microsoft Corporation Azure Armando Guzman, Raley’s • A major component of security involves protecting the network and zero trust. Azure Spring Cloud supports deploying to private VNets allowing Raley’s to utilize Azure API Manager and Azure Application Gateway to protect our services from outside and inside the network. • Azure Spring Cloud also natively supports Azure Key Vault. Raley’s was able to move application secrets to Azure Key Vault. After adopting Azure Key Vault for our Spring Applications we also migrated our Azure DevOps Pipeline secrets to Azure Key Vault. • Azure Spring Cloud also supports Spring Configuration Server allowing us to keep our configuration in git repos and update configuration using Pull Requests and Azure Pipelines. • Azure Spring Cloud allows us to meet and improve on our security posture while providing peace of mind that our services are secure.
  • 30. ©Microsoft Corporation Azure Peter Verstraete, Liantis • When it comes to identity and access management, Liantis has a solution in place based on one of the leading IAM providers. Using a custom Spring Boot starter, integrating this solution with Spring Security is a smooth process. It works perfectly in services deployed in Azure Spring Cloud. • For now secrets are stored in configuration. Although they are protected by encryption, we decided to move our secrets to Azure Key Vault. This makes the management of secrets much easier. At Liantis we have company-wide and component-specific secrets. We decided to store the different kind of secrets in separate Azure Key Vaults. Recently, Microsoft released a new version of its Key Vault SpringBoot starter which supports such an approach.
  • 31. ©Microsoft Corporation Azure Jonathan Jones, Swiss Re • Clearly in a move to the public cloud security is one of our primary considerations. Swiss Re are following the CSA CCM (Cloud Security Alliance, Cloud Controls Matrix) and anything we do has to be compliant with that. All the Spring Boot applications we deploy are checked for CVEs and we simply can't deploy the software should there be any known vulnerabilities. We also have automated smoke tests after new deployments, which check that key aspects of our security policy have not been mutated by the deployment. • By using a PaaS like Azure Spring Cloud we try to lower our attack surface by delegating activities like network management and compute management to Microsoft. The less moving parts we must configure and maintain, the better. This is demonstrated further by Microsoft taking responsibility for patching the Java versions and exposing a fine-grained permission model for Azure Spring Cloud. • The system assigned managed identity Azure Spring Cloud provides to each application is important, as we use this to bootstrap access to Azure Key Vaults, access Microsoft Graph and authenticate to where we store the static content in Azure Storage. • Important as well is we minimize the exposure of our applications, so all the back-end services run on private IP addresses. All ingress comes through our Spring Cloud Gateway application which is shielded by Cloudflare; whose capabilities include a Web Application Firewall (WAF).
  • 32. What does cloud native software development mean to you and what advice do you have for Spring devs considering cloud? Swiss Re, Raley’s and Liantis
  • 33. ©Microsoft Corporation Azure Jonathan Jones, Swiss Re • Well firstly for me cloud native doesn't necessarily mean microservices. Our teams are building services that are decomposed to a level which makes sense to us. We want to take advantage of the public cloud, but we want to maximize the time we spend on interacting with our business and delivering value through software. "Cloud native" ultimately must provide tangible results which our business sponsors recognize. Clearly platforms like Azure Spring Cloud help, as they take away implementation and management effort which is not our core competency. • In terms of what we do: 1) we try and give our product teams autonomy and ownership. Self-service is a critical factor – we have to be able to make progress without waiting for service requests and long fulfilment chains 2) We remove as much friction as possible from the development process 3) We have no magic. Everything we create and deploy must have a representation in git. 4) All of our services expose clean and consistent APIs 5) We never compromise on security. So we create a baseline, which we maintain and improve over time 6) We automate the monitoring of our software as much as possible and we try to automate the response to that monitoring as much as possible • I think one piece of advice that has worked well for us is whether you target the cloud or not is to get the basics right i.e. start off from day one doing all the "right" things i.e. everything in git, automated tests, automated builds, automated deployments.
  • 34. ©Microsoft Corporation Azure Armando Guzman, Raley’s • Cloud native to me means creating applications that can take advantage of Cloud Services. Cloud native software development must facilitate rapid development, CI/CD, and autoscaling to name a few key features. Cloud native software development allows developers to focus on the application logic, innovate and quickly bring value to the business team. • Azure Spring Cloud supports all these feature while eliminating the need to spend infrastructure and development resources deploying, configuring and testing to ensure features are setup correctly. • Adopting Azure Spring Cloud has made our developers more productive, allowed them to focus on the application and business logic without needing to worry about the underlying infrastructure all while adding in demand technologies and skills to their resumes! • Adopting Azure Spring Cloud shifts the management of Kubernetes, OS patches and updates to the experts at Azure making our development and business teams more productive.
  • 35. ©Microsoft Corporation Azure Peter Verstraete, Liantis • The Spring Framework together with Spring Boot and Spring Cloud helps to improve the application or microservice development process. Different kind of boilerplate aspects are taken care of. And the frameworks help developers to use architectural principles, design patterns, enterprise integration patterns or distributed system patterns more easily. A supporting platform/ecosystem (with capabilities such as DevOps pipelines, centralized logging & monitoring, security, discovery, centralized configuration, scaling, ...) is a must: o to streamline the development process. o to act as the hosting platform for the developed microservices. • By adding Azure and Azure Spring Cloud to the trio Spring/Boot/Cloud, you remove a major burden from your IT organization to setup/maintain such a supporting ecosystem. • It allows our agile development teams to focus on producing business value/functionality without worries.
  • 36. © Copyright Microsoft Corporation. All rights reserved. Thank you, everyone!! +