SlideShare a Scribd company logo
1 Azure Saturday 2018
MODERN ARCHITECTURE
In The Cloud Of 2018
Marius Zaharia|Cellenza
2 Azure Saturday 2018
Thank you, sponsors!
3 Azure Saturday 2018
Agenda
• Context and Challenges
• Definition and Perspectives
• Application Architecture Patterns
• Deployment Patterns
• Build and Compose
• Transformation
• Conclusion
4
Meet the Team
Azure MVP & Advisor
AZUG FR Community
Marius Zaharia
Technical Manager Cloud, Cellenza
@lecampusazure
Diversification of services and models
 Today, more and more
companies are planning to be or
are already in the cloud
 The large Public Clouds - Azure
and AWS - deploy at high-speed
a diversity of services and
features
 It becomes more and more
difficult to find a service or make
a clear choice
« For my internet facing web solution: Azure App
Service ? App Service for Containers ? Azure
Functions ? Or rather automated VMs? VM Scale
Sets ? A Kubernetes cluster with AKS ? »
 Acceleration of architectural evolutions
towards new forms and patterns
 Companies must be ready to apply these
new patterns in their implementations
Architectural Evolutions
« I have in-house machine clusters and Enterprise
Services Buses: what about the needs of our business
units to implement microservice APIs? »
 Modern cloud services already used in
some companies, but without specific
recommendations
 Cloud service developers or users do not
know the impact of these services in the
security context
Risks of Cloud Architecture Choices
« Azure Functions seems a very good solution for
my scenario. But is the service secure enough to
prevent access to users’ confidential data?»
credits : whitesource.com
 with heavy architectural models come
heavy development and implementation
processes
 low tooling and automation level
 qualifications of the teams and their
work habits
Inadequate processes, tools and qualifications
« A new marketing campaign will have to be launched in one month -
infrastructure, development, deployment from scratch. Our teams
usually deliver under 6 months. How to answer? »
Credits: pxhere.com
MODERN ARCHITECTURE
Modern
Architecture
Cloud
Agile /
DevOps
Modern Architecture
Modern Architecture: This set of
concepts and models that make
applications:
• Faster to implement,
• More flexible and elastic,
• More economically efficient
It is based on two fundamental
pillars:
1. The Cloud
2. DevOps and Agile practices
Traditional / on-premises Modern / Cloud
Monolithic, centralized Decomposed, decentralized
Design for predictable scalability Design for elastic scale
Relational database Persistence polyglot
Strong consistency Possible consistency
Serial and synchronized processing Parallel and asynchronous processing
Design to avoid failures Design in case of failure
Large occasional updates Small frequent updates
Manual management Automated management
Approach comparizon
Modern Application
Architecture
• Microservices
• Event-Driven
• CQRS
• Modern Orchestration
• Lambda Architecture
• …
Modern Deployment
Architecture
• Serverless
• Containers
• Modern Compute
• Managed Containers
• …
Modern Architecture – 2 perspectives
New application patterns, or
models revisited in the context of
Cloud and DevOps
Innovative deployment models
made possible by the advent
of the Cloud
Modern
Application Architecture
Patterns
14
Microservices
A software architecture model from which a
complex set of services is broken down into
several independent and loosely coupled
processes, often specialized in a single task.
Advantages Disadvantages
Agility Service limits
Reduced code, reduced
team Data Integrity
Mix of technologies Network congestion and latency
Elasticity Complexity
Scalability CI / CD / Automation
Data isolation Surveillance & monitoring
15
Event-Driven Architecture
An Event-Driven architecture is made up of event producers that
generate a flow of events and event consumers that listen to events.
16
CQRS
Command and Query Responsibility Segregation (CQRS) is
an architectural model that essentially separates read
operations from write operations.
Advantages Disadvantages
Independent scaling Complexity
Optimized data schemas Messaging
Security Eventual consistency
Separation of concerns
Simpler queries
17
Other patterns
• Orchestration / modern workflow
• A process model consisting of sequential or parallel tasks that are based on connectors
(prebuilt)
• Lambda architecture
• A data-processing architecture designed to handle amounts of data by taking advantage
of batch and stream methods.
• Big Data
• Data architecture designed to handle the ingestion, processing, and analysis of large or
complex data for traditional database systems.
• Big Compute
• Architecture describing large-scale workloads that require a large number of CPUs / cores,
often hundreds or thousands, for mass computing
MODERN DEPLOYMENT
INFRASTRUCTURE
19
Modern Compute
• “Compute” originally refers to the classic IaaS model (based on virtual
machines)
• These are still unmanaged resources at the base
• In exchange :
• Model enriched by additional features like :
automatic patching, change management, backup etc.
• These features fulfill a part of the platform’s managing
effort, while keeping the control
• Automated implementation of the individual operations
• Grouping of machines and scaling them together
20
« Enhanced » PaaS
• PaaS (Platform-as-a-Service) is designed as a more modern pattern
than the IaaS from which it is derived
• We still reason in terms of instances, but they are managed at the OS
level and/or middleware level
• In addition, PaaS evolves and is enriched by many configurations and
services, such as:
• Identity / authentication / authorization, backup
• Domain management, push notifications for mobile
• Automatic deployment, multi-slots
• Advanced monitoring and troubleshooting,
performance testing
21
Serverless
Serverless Computing is a deployment and execution model in which
the service provider dynamically manages (and bills) the allocation of
machine resources for each execution.
Serverless is NOT just Function-as-a-Service
Advantages Disadvantages
Transparent scaling Performance
Operations Limitation of resources
Productivity Eventual consistency
Cost Monitoring and troubleshooting
22
Containers
Containerization refers to a feature of the operating system in
which the kernel allows the existence of multiple isolated user
space instances, named containers.
Programs running in a container can only see the contents of the
container and the devices assigned to the container.
23
Containers – derived patterns
• Managed Containers
• Orchestrator managed by the service provider
• Serverless Containers
• Serverless model but using containers for deployment
Classic vs modern deploymentpatterns
Bare Metal
IaaS
PaaS
Modern
Compute
Containers
Serverless
Managed
Containers
Serverless
Containers
Modern models:
• Serverless, Containers,
• Modern Compute,
• ("Enhanced") PaaS
Composite models:
• Managed Containers
• Serverless Containers
Future models:?
?
?
?
?
Representative
AZURE MODERN SERVICES
Modern Patterns in Azure Services
Azure
Functions
Event Grid Logic Apps
Kubernetes
Service (AKS)
Container
Instances
(ACI)
Service
Fabric Cosmos
DB
Durable
Functions
Stream
Analytics
Event-Driven
Microservices
Modern
Orchestration
Lambda
Architecture
NoSQL
The applicability of the
patterns is multiple; which
complicates the classification
and associations of the
models.
• We will use choice and
decision matrices
……
…….
27
Modern Services in Azure
•Virtual Machines is an IaaS service that allows you to
deploy and manage virtual machines within a virtual
network (VNET).
•Virtual Machines Scale Sets (VMSS) is an IaaS service
that allows you to deploy one or more (thousands) of
virtual machines in an elastic scaling mode.
For very powerful
features around:
patch
management,
change tracking,
elastic scaling and
automation
Modern
Compute
•Azure Batch is a managed service that allows you to run
high-performance computing (HPC) and parallel
computing applications on a large scale.
28
Modern Services in Azure
•App Service is a managed (PaaS) service for hosting
web applications (Web Apps), mobile applications or
RESTful APIs
"Enhanced" PaaS
For high added value
features
For combining PaaS with
the versatility of
containers
•Web App for Containers is a managed (PaaS) service
for web application hosting (Web Apps) based on
container deployment model.
Containers
"Enhanced" PaaS
CQRS
29
Modern Services in Azure
•Azure Functions is a “Function-as-a-Service” managed
service. This service is hosted by App Service but is based
on a Serverless model via a special App Service Plan called
Consumption
Event-Driven
Serverless
For using triggers and
bindings, combined with
code
•Azure Functions for Linux is a “Function-as-a-Service”
managed service, to which deployment model relies on
Docker containers on Linux
Event-Driven
Serverless
Containers
For using triggers and
bindings, combined with
containers
Microservices
Microservices
30
Modern Services in Azure
For high added value
features
Event-Driven
Modern
Orchestration
Serverless
For lightweight but very
powerful workflows
•Logic Apps is a managed service for implementing and
hosting automated business processes.
•Logic Apps is based a lot on predefined connectors or
on standardized graphical actions.
•Durable Functions is a managed serverless service for
implementing and hosting business processes or
custom actions that are implemented through code.
Event-Driven
Modern
Orchestration
Serverless
31
Modern Services in Azure
•Azure Event Grid is a events type service by linking
producers (Azure services, but also custom apps) with
consumers (Azure services or your code) Event-Driven
Serverless
For the intensive use of
the event-driven model
•Stream Analytics is a service based on an event engine
capable of processing, filtering, directing events streams in
real time
Event-Driven
For fast and powerful
processing of real time
events
Archi. Lambda
32
Modern Services in Azure
•Azure Kubernetes Service (AKS) allows creating, configuring,
and managing a cluster of preconfigured virtual machines for
running container-based applications in an orchestrated mode.
•Azure Container Instances allows to create, configure and
manage individual containers directly. The hosting OS is
managed behind. The provisioning cluster is completely
transparent.
Managed
Containers
Microservices
Serverless
Containers
Microservices
For the fine
granularity of services
For the simplicity and
speed to create a
container
33
Modern Services in Azure
•Service Fabric is a application orchestrator service that
can run on many platforms and allows running
microservices (stateless or stateful) as executables, or
containers on a highly scalable cluster of machines.
•Service Fabric Mesh is an Azure serverless offer based
on the Service Fabric engine and fully managed by
Azure. For a very powerful and
scalable platform
Managed
Containers
Microservices
•Cosmos DB is a fully managed non-relational database
(NoSQL) that allows global distribution, high availability
and controllable consistency in a very granular way. "Enhanced" PaaS
NoSQL
For its wealth of features
and the premium level of
service
Serverless*
Build and Compose a
MODERN ARCHITECTURE
35
Choice Matrix – Compute Services
Criteria
Virtual
Machines App Service Service Fabric Azure Functions
Azure Kubernetes
Service
Container
Instances Azure Batch
Application
composition
Agnostic Applications Services, guest
executables,
containers
Functions Containers Containers Scheduled jobs
Density Agnostic Multiple apps
per instance via
app plans
Multiple
services per VM
No dedicated
instances
Multiple
containers per VM
No dedicated
instances
Multiple apps
per VM
Minimum number
of nodes
1 1 5 No dedicated
nodes
3 No dedicated
nodes
1
State management Stateless or
Stateful
Stateless Stateless or
stateful
Stateless Stateless or
Stateful
Stateless Stateless
OS Windows,
Linux
Windows, Linux Windows, Linux Not applicable Windows
(preview), Linux
Windows,
Linux
Windows, Linux
Can be deployed to
dedicated VNet?
Supported Supported Supported Supported Not Supported Not supported Supported
Hybrid
connectivity
Supported Supported Supported Supported Supported Not supported Supported
36
Web and Mobile Applications
Scalable Web Application
37
Web and Mobile Applications
38
Data / BI Applications
39
Event Processing
41
Enterprise Integration
Transformation et modernisation
43
Transformation and modernisation
1.TECHNICAL
2.ORGANISATIONAL
44
Transformation Steps
Lift & Shift
Migration of the
VMs in the actual
state
Optimization
Actions on
configurations and
levers to optimize
consumption,
simplify complexity,
...
Modernization
Deep change in
application
architecture to
apply native cloud
concepts
45
From monolith to microservices
From monolith to micro-teams
46
DevOps, Essential
Conclusion
Conclusion
• The Modern Architecture represents the Best (services)
of the Cloud
But: must understand well the Cloud and do the right
choices
• If coming from legacy, the optimal transformation process
is fundamental
It’s not only technique, but also organization
49
Questions ?
Azure Saturday 2018
We appreciate your feedback!
Azure Saturday 2018
Thank you!

More Related Content

PPTX
Onboard a Historical Company on the Cloud Journey
PDF
Introduction to Azure
PDF
Microsoft Azure
PPTX
Security on AWS
PPTX
05 Azure overview Using cloud principles v.2.0
PPTX
Cisco integrated system for microsoft azure stack
PDF
Azure Saturday: Security + DevOps + Azure = Awesomeness
PPTX
Onboard a Historical Company on the Cloud Journey
Introduction to Azure
Microsoft Azure
Security on AWS
05 Azure overview Using cloud principles v.2.0
Cisco integrated system for microsoft azure stack
Azure Saturday: Security + DevOps + Azure = Awesomeness

What's hot (20)

PPTX
Multi-Tenant Identity and Azure Resource Governance - Identity Days 2019
PPTX
State of the EUC - 2020 What's new in End-User Computing
PDF
ITCamp 2018 - Thomas Maurer - Azure Stack - Everything you need to know!
PDF
Azure SQL Database
PPTX
Delivering and optimizing citrix from microsoft azure
PDF
Azure Hybid
PPTX
State of the EUC - 2020 What's new in End-User Computing
PPTX
Multi-Tenant Identity and Azure Resource Governance - ReBUILD 2019
PDF
Adelaide Global Azure Bootcamp 2018 - Azure 101
PPTX
Azure Fundamentals || AZ-900
PPTX
EUC State of the Union 2021
PPTX
Azure Overview Arc
PDF
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
PPTX
Cloud Computing and Microsoft Azure
PPTX
Citrix with Microsoft EMS
PPTX
Microsoft Azure Cloud Basics Tutorial
PPTX
Patterns of Cloud Applications Using Microsoft Azure Services Platform
PPTX
Azure fundamentals
PPTX
Citrix Cloud XL - Running Ctirix in Public Cloud
PPTX
Azure Fundamentals Part 2
 
Multi-Tenant Identity and Azure Resource Governance - Identity Days 2019
State of the EUC - 2020 What's new in End-User Computing
ITCamp 2018 - Thomas Maurer - Azure Stack - Everything you need to know!
Azure SQL Database
Delivering and optimizing citrix from microsoft azure
Azure Hybid
State of the EUC - 2020 What's new in End-User Computing
Multi-Tenant Identity and Azure Resource Governance - ReBUILD 2019
Adelaide Global Azure Bootcamp 2018 - Azure 101
Azure Fundamentals || AZ-900
EUC State of the Union 2021
Azure Overview Arc
Azure Days 2019: Trivadis Azure Foundation – Das Fundament für den ... (Nisan...
Cloud Computing and Microsoft Azure
Citrix with Microsoft EMS
Microsoft Azure Cloud Basics Tutorial
Patterns of Cloud Applications Using Microsoft Azure Services Platform
Azure fundamentals
Citrix Cloud XL - Running Ctirix in Public Cloud
Azure Fundamentals Part 2
 
Ad

Similar to Modern Architecture in the Cloud of 2018 (20)

PPTX
Modern Architecture in the Cloud of 2018 (IT Camp 2018)
PPTX
Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...
PPTX
Cloud Computing101 Azure, updated june 2017
PPTX
Azure Application Architecture Guide
PDF
"Portrait of the developer as The Artist" Lockheed Architect Workshop
PPTX
Azure Application Modernization
PPTX
Applicare patterns di sviluppo con Azure
PPTX
Microservices in Azure
PDF
Modernising Change - Lime Point - Confluent - Kong
PPTX
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
PPTX
App Modernisation with Microsoft Azure
PPTX
Microservices in Azure
PPSX
Cloud Architecture - Multi Cloud, Edge, On-Premise
PDF
AZ900-AzureFundamentals-part-5.pdf
PPTX
Azure architecture design patterns - proven solutions to common challenges
PPTX
The Ideal Approach to Application Modernization; Which Way to the Cloud?
PPTX
WTIA Cloud Computing Series - Part IV: Microsofts World View of Cloud Computing
PPTX
Modern Microservices Architecture with Docker
PDF
Application modernization with azure PaaS and FaaS
PDF
Modern times - architectures for a Next Generation of IT
Modern Architecture in the Cloud of 2018 (IT Camp 2018)
Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...
Cloud Computing101 Azure, updated june 2017
Azure Application Architecture Guide
"Portrait of the developer as The Artist" Lockheed Architect Workshop
Azure Application Modernization
Applicare patterns di sviluppo con Azure
Microservices in Azure
Modernising Change - Lime Point - Confluent - Kong
ArchitectNow - Designing Cloud-Native apps in Microsoft Azure
App Modernisation with Microsoft Azure
Microservices in Azure
Cloud Architecture - Multi Cloud, Edge, On-Premise
AZ900-AzureFundamentals-part-5.pdf
Azure architecture design patterns - proven solutions to common challenges
The Ideal Approach to Application Modernization; Which Way to the Cloud?
WTIA Cloud Computing Series - Part IV: Microsofts World View of Cloud Computing
Modern Microservices Architecture with Docker
Application modernization with azure PaaS and FaaS
Modern times - architectures for a Next Generation of IT
Ad

More from Marius Zaharia (17)

PPTX
Azure Firewall (Meetup Société Générale - dec 2018)
PPTX
Onboarding a Historical Company on the Cloud Journey (IT Camp 2018)
PPTX
Architecture Moderne dans le Cloud en 2018
PPTX
Onboarding a Historical Company on the Cloud Journey
PPTX
APIs dans Azure : serverless ou pas serverless?
PPTX
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
PPTX
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
PPTX
Ro IT Webinar - Masina Virtuala, calatorie catre cloud
PDF
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
PDF
Soyez le maître du PRA - MS Cloud Summit Paris 2017
PPTX
Gouvernance et sécurisation de vos ressources cloud avec Azure Active Directo...
PPTX
Azure Networking: Innovative Features and Multi-VNet Topologies
PPTX
Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics
PPTX
Automati(sati)on de votre application Azure
PPTX
Session iot gwab 2014 paris
PPTX
Patterns azure cloud
PPTX
Azure Integration Services : les concepts de BizTalk dans le cloud (ARC303)
Azure Firewall (Meetup Société Générale - dec 2018)
Onboarding a Historical Company on the Cloud Journey (IT Camp 2018)
Architecture Moderne dans le Cloud en 2018
Onboarding a Historical Company on the Cloud Journey
APIs dans Azure : serverless ou pas serverless?
One Azure Monitor to Rule Them All? (IT Camp 2017, Cluj, RO)
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
Ro IT Webinar - Masina Virtuala, calatorie catre cloud
Identite-as-a-service pour vos applications B2C - MS Cloud Summit Paris 2017
Soyez le maître du PRA - MS Cloud Summit Paris 2017
Gouvernance et sécurisation de vos ressources cloud avec Azure Active Directo...
Azure Networking: Innovative Features and Multi-VNet Topologies
Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics
Automati(sati)on de votre application Azure
Session iot gwab 2014 paris
Patterns azure cloud
Azure Integration Services : les concepts de BizTalk dans le cloud (ARC303)

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPT
Teaching material agriculture food technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Empathic Computing: Creating Shared Understanding
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
TLE Review Electricity (Electricity).pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
August Patch Tuesday
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Encapsulation theory and applications.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Spectral efficient network and resource selection model in 5G networks
Per capita expenditure prediction using model stacking based on satellite ima...
Teaching material agriculture food technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
A comparative study of natural language inference in Swahili using monolingua...
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
Empathic Computing: Creating Shared Understanding
Univ-Connecticut-ChatGPT-Presentaion.pdf
TLE Review Electricity (Electricity).pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Network Security Unit 5.pdf for BCA BBA.
August Patch Tuesday
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Programs and apps: productivity, graphics, security and other tools
NewMind AI Weekly Chronicles - August'25-Week II
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Encapsulation theory and applications.pdf

Modern Architecture in the Cloud of 2018

  • 1. 1 Azure Saturday 2018 MODERN ARCHITECTURE In The Cloud Of 2018 Marius Zaharia|Cellenza
  • 2. 2 Azure Saturday 2018 Thank you, sponsors!
  • 3. 3 Azure Saturday 2018 Agenda • Context and Challenges • Definition and Perspectives • Application Architecture Patterns • Deployment Patterns • Build and Compose • Transformation • Conclusion
  • 4. 4 Meet the Team Azure MVP & Advisor AZUG FR Community Marius Zaharia Technical Manager Cloud, Cellenza @lecampusazure
  • 5. Diversification of services and models  Today, more and more companies are planning to be or are already in the cloud  The large Public Clouds - Azure and AWS - deploy at high-speed a diversity of services and features  It becomes more and more difficult to find a service or make a clear choice « For my internet facing web solution: Azure App Service ? App Service for Containers ? Azure Functions ? Or rather automated VMs? VM Scale Sets ? A Kubernetes cluster with AKS ? »
  • 6.  Acceleration of architectural evolutions towards new forms and patterns  Companies must be ready to apply these new patterns in their implementations Architectural Evolutions « I have in-house machine clusters and Enterprise Services Buses: what about the needs of our business units to implement microservice APIs? »
  • 7.  Modern cloud services already used in some companies, but without specific recommendations  Cloud service developers or users do not know the impact of these services in the security context Risks of Cloud Architecture Choices « Azure Functions seems a very good solution for my scenario. But is the service secure enough to prevent access to users’ confidential data?» credits : whitesource.com
  • 8.  with heavy architectural models come heavy development and implementation processes  low tooling and automation level  qualifications of the teams and their work habits Inadequate processes, tools and qualifications « A new marketing campaign will have to be launched in one month - infrastructure, development, deployment from scratch. Our teams usually deliver under 6 months. How to answer? » Credits: pxhere.com
  • 10. Modern Architecture Cloud Agile / DevOps Modern Architecture Modern Architecture: This set of concepts and models that make applications: • Faster to implement, • More flexible and elastic, • More economically efficient It is based on two fundamental pillars: 1. The Cloud 2. DevOps and Agile practices
  • 11. Traditional / on-premises Modern / Cloud Monolithic, centralized Decomposed, decentralized Design for predictable scalability Design for elastic scale Relational database Persistence polyglot Strong consistency Possible consistency Serial and synchronized processing Parallel and asynchronous processing Design to avoid failures Design in case of failure Large occasional updates Small frequent updates Manual management Automated management Approach comparizon
  • 12. Modern Application Architecture • Microservices • Event-Driven • CQRS • Modern Orchestration • Lambda Architecture • … Modern Deployment Architecture • Serverless • Containers • Modern Compute • Managed Containers • … Modern Architecture – 2 perspectives New application patterns, or models revisited in the context of Cloud and DevOps Innovative deployment models made possible by the advent of the Cloud
  • 14. 14 Microservices A software architecture model from which a complex set of services is broken down into several independent and loosely coupled processes, often specialized in a single task. Advantages Disadvantages Agility Service limits Reduced code, reduced team Data Integrity Mix of technologies Network congestion and latency Elasticity Complexity Scalability CI / CD / Automation Data isolation Surveillance & monitoring
  • 15. 15 Event-Driven Architecture An Event-Driven architecture is made up of event producers that generate a flow of events and event consumers that listen to events.
  • 16. 16 CQRS Command and Query Responsibility Segregation (CQRS) is an architectural model that essentially separates read operations from write operations. Advantages Disadvantages Independent scaling Complexity Optimized data schemas Messaging Security Eventual consistency Separation of concerns Simpler queries
  • 17. 17 Other patterns • Orchestration / modern workflow • A process model consisting of sequential or parallel tasks that are based on connectors (prebuilt) • Lambda architecture • A data-processing architecture designed to handle amounts of data by taking advantage of batch and stream methods. • Big Data • Data architecture designed to handle the ingestion, processing, and analysis of large or complex data for traditional database systems. • Big Compute • Architecture describing large-scale workloads that require a large number of CPUs / cores, often hundreds or thousands, for mass computing
  • 19. 19 Modern Compute • “Compute” originally refers to the classic IaaS model (based on virtual machines) • These are still unmanaged resources at the base • In exchange : • Model enriched by additional features like : automatic patching, change management, backup etc. • These features fulfill a part of the platform’s managing effort, while keeping the control • Automated implementation of the individual operations • Grouping of machines and scaling them together
  • 20. 20 « Enhanced » PaaS • PaaS (Platform-as-a-Service) is designed as a more modern pattern than the IaaS from which it is derived • We still reason in terms of instances, but they are managed at the OS level and/or middleware level • In addition, PaaS evolves and is enriched by many configurations and services, such as: • Identity / authentication / authorization, backup • Domain management, push notifications for mobile • Automatic deployment, multi-slots • Advanced monitoring and troubleshooting, performance testing
  • 21. 21 Serverless Serverless Computing is a deployment and execution model in which the service provider dynamically manages (and bills) the allocation of machine resources for each execution. Serverless is NOT just Function-as-a-Service Advantages Disadvantages Transparent scaling Performance Operations Limitation of resources Productivity Eventual consistency Cost Monitoring and troubleshooting
  • 22. 22 Containers Containerization refers to a feature of the operating system in which the kernel allows the existence of multiple isolated user space instances, named containers. Programs running in a container can only see the contents of the container and the devices assigned to the container.
  • 23. 23 Containers – derived patterns • Managed Containers • Orchestrator managed by the service provider • Serverless Containers • Serverless model but using containers for deployment
  • 24. Classic vs modern deploymentpatterns Bare Metal IaaS PaaS Modern Compute Containers Serverless Managed Containers Serverless Containers Modern models: • Serverless, Containers, • Modern Compute, • ("Enhanced") PaaS Composite models: • Managed Containers • Serverless Containers Future models:? ? ? ? ?
  • 26. Modern Patterns in Azure Services Azure Functions Event Grid Logic Apps Kubernetes Service (AKS) Container Instances (ACI) Service Fabric Cosmos DB Durable Functions Stream Analytics Event-Driven Microservices Modern Orchestration Lambda Architecture NoSQL The applicability of the patterns is multiple; which complicates the classification and associations of the models. • We will use choice and decision matrices …… …….
  • 27. 27 Modern Services in Azure •Virtual Machines is an IaaS service that allows you to deploy and manage virtual machines within a virtual network (VNET). •Virtual Machines Scale Sets (VMSS) is an IaaS service that allows you to deploy one or more (thousands) of virtual machines in an elastic scaling mode. For very powerful features around: patch management, change tracking, elastic scaling and automation Modern Compute •Azure Batch is a managed service that allows you to run high-performance computing (HPC) and parallel computing applications on a large scale.
  • 28. 28 Modern Services in Azure •App Service is a managed (PaaS) service for hosting web applications (Web Apps), mobile applications or RESTful APIs "Enhanced" PaaS For high added value features For combining PaaS with the versatility of containers •Web App for Containers is a managed (PaaS) service for web application hosting (Web Apps) based on container deployment model. Containers "Enhanced" PaaS CQRS
  • 29. 29 Modern Services in Azure •Azure Functions is a “Function-as-a-Service” managed service. This service is hosted by App Service but is based on a Serverless model via a special App Service Plan called Consumption Event-Driven Serverless For using triggers and bindings, combined with code •Azure Functions for Linux is a “Function-as-a-Service” managed service, to which deployment model relies on Docker containers on Linux Event-Driven Serverless Containers For using triggers and bindings, combined with containers Microservices Microservices
  • 30. 30 Modern Services in Azure For high added value features Event-Driven Modern Orchestration Serverless For lightweight but very powerful workflows •Logic Apps is a managed service for implementing and hosting automated business processes. •Logic Apps is based a lot on predefined connectors or on standardized graphical actions. •Durable Functions is a managed serverless service for implementing and hosting business processes or custom actions that are implemented through code. Event-Driven Modern Orchestration Serverless
  • 31. 31 Modern Services in Azure •Azure Event Grid is a events type service by linking producers (Azure services, but also custom apps) with consumers (Azure services or your code) Event-Driven Serverless For the intensive use of the event-driven model •Stream Analytics is a service based on an event engine capable of processing, filtering, directing events streams in real time Event-Driven For fast and powerful processing of real time events Archi. Lambda
  • 32. 32 Modern Services in Azure •Azure Kubernetes Service (AKS) allows creating, configuring, and managing a cluster of preconfigured virtual machines for running container-based applications in an orchestrated mode. •Azure Container Instances allows to create, configure and manage individual containers directly. The hosting OS is managed behind. The provisioning cluster is completely transparent. Managed Containers Microservices Serverless Containers Microservices For the fine granularity of services For the simplicity and speed to create a container
  • 33. 33 Modern Services in Azure •Service Fabric is a application orchestrator service that can run on many platforms and allows running microservices (stateless or stateful) as executables, or containers on a highly scalable cluster of machines. •Service Fabric Mesh is an Azure serverless offer based on the Service Fabric engine and fully managed by Azure. For a very powerful and scalable platform Managed Containers Microservices •Cosmos DB is a fully managed non-relational database (NoSQL) that allows global distribution, high availability and controllable consistency in a very granular way. "Enhanced" PaaS NoSQL For its wealth of features and the premium level of service Serverless*
  • 34. Build and Compose a MODERN ARCHITECTURE
  • 35. 35 Choice Matrix – Compute Services Criteria Virtual Machines App Service Service Fabric Azure Functions Azure Kubernetes Service Container Instances Azure Batch Application composition Agnostic Applications Services, guest executables, containers Functions Containers Containers Scheduled jobs Density Agnostic Multiple apps per instance via app plans Multiple services per VM No dedicated instances Multiple containers per VM No dedicated instances Multiple apps per VM Minimum number of nodes 1 1 5 No dedicated nodes 3 No dedicated nodes 1 State management Stateless or Stateful Stateless Stateless or stateful Stateless Stateless or Stateful Stateless Stateless OS Windows, Linux Windows, Linux Windows, Linux Not applicable Windows (preview), Linux Windows, Linux Windows, Linux Can be deployed to dedicated VNet? Supported Supported Supported Supported Not Supported Not supported Supported Hybrid connectivity Supported Supported Supported Supported Supported Not supported Supported
  • 36. 36 Web and Mobile Applications Scalable Web Application
  • 37. 37 Web and Mobile Applications
  • 38. 38 Data / BI Applications
  • 43. 44 Transformation Steps Lift & Shift Migration of the VMs in the actual state Optimization Actions on configurations and levers to optimize consumption, simplify complexity, ... Modernization Deep change in application architecture to apply native cloud concepts
  • 44. 45 From monolith to microservices From monolith to micro-teams
  • 47. Conclusion • The Modern Architecture represents the Best (services) of the Cloud But: must understand well the Cloud and do the right choices • If coming from legacy, the optimal transformation process is fundamental It’s not only technique, but also organization
  • 49. Azure Saturday 2018 We appreciate your feedback!