SlideShare une entreprise Scribd logo
1  sur  58
First 13 steps to be able to
design an application for
Azure Service Fabric
@RaduVunvulea
RADU
VUNVULEA
MCTS MCP BANK HOME AUTOMATION
MVP ENTERPRISE
AUTOMOTIVE PHARMA
LEAN AND AGILE E-COMMERCE
WEB iQuest
AZURE JAVASCRIPT VUNVULEARADU.BLOGSPOT.COM
MOBILE DOTNET @RaduVunvulea
WCF WPF ENTHUSIASTIC
Monolithic systems
Things started to evolve
… and evolve
Team responsability
Product Team
<<Needs to know each
part of the system>>
Microservices
<< software architecture style in which complex
applications are composed of small, independent
processes communicating with each other using
language-agnostic APIs>>
Microservices
High decoupled
Small
Easy to replace
Symmetrical architecture
Focus on doing a small task
Independent deployment units
Service Fabric
Build and operate always-on, hyper-scale
services
Capabilities
Overview
Service Type
Service Type
Reliable
Services
Reliable
Actors
Stateful
Stateless
Reliable Service and Actor
ReliableService
• Classical
service
• Reliable
• Available
• Scalable
ReliableActor
• State
• Turn-base
access
• Single
thread
• Reentrancy
Stateless and Stateful
Stateless
• No state
persisted
between
calls
Stateful
• ‘A’ state
is
persisted
between
calls
Lifecycle
Reliable
Services
Reliable
Actors
Stateful
Stateless
First call…
Reliable
Services
Reliable
Actors
Stateful
Stateless
… after the call is executed
Reliable
Services
Reliable
Actors
Stateful
Stateless
… when GC is triggered
Reliable Collections
• Low latency
• High-throughput
• Isolation Level
• Snapshot
• Repeatable Read
• Can be used only
with Reliable Stateful Services
Reliable Collections
Dictionary
and
Queue
Replicated
Persisted
In-memory
<<service
instance>>
Asynchronous
Transactional
Where collection are stored
Reliable Collection – visibility
• Different instances of the
same service can access
the same Reliable
Collection
• Instances from different
services cannot access the
same collection
•
•
Timers and Reminders
(Actor only)
Timers and Reminders
Timers
Similar with .NET
Called at a specific
time interval
Reminders
Timer with
persistence
Trigered in all
circumstances
(deactivations and
failovers)
Concurrency
Turn based
concurrency
Stateful Actos only
Concurrency
Events and Reentrancy
(Actor only)
Events Reentrancy
• Send notifications
• Should be used only
for actor-client
communication
• Allows actors to
reentrant when is
the same call
context chain
• Can be controlled
(ReentrancyMode)
Register
Call the event from our actor
Partitioning & Replication
Partitioning
Similar with Data Partitioing and Sharding
Replication
Failover Manager & Upgrade Domains
... at what level
Application
• Partitioning
• Replication
Cluster
• Fault Domain
• Upgrade Domain
• Naming Service
• Resource
Balancer
• Failover
Manager
Service Affinity
Service Affinity
• Give us the possibility to ensure that 2 different
services are running on the same machine
• Useful for migration scenarios (legacy applications)
• Limitations
• Services of the same type (stateless or stateful)
• Stateless services need to have the same instance count
• Stateful services need to have the same replica number
• Cannot be used in combination with partitioning
Service Affinity
<ServiceTemplates>
<StatelessService ServiceTypeName=“PaymentService" InstanceCount=“8">
<SingletonPartition />
</StatelessService>
…
</ServiceTemplates>
<ServiceTemplates>
<StatelessService ServiceTypeName=“CardTransactionService" InstanceCount=“8">
<SingletonPartition />
<ServiceCorrelations>
<ServiceCorrelation Scheme="Affinity" ServiceName="fabric:/shopApp/paymentService"/>
</ServiceCorrelations>
</StatelessService>
</ServiceTemplates>
Service Affinity
<ServiceTemplates>
<StatelessService ServiceTypeName=“PaymentService" InstanceCount=“8">
<SingletonPartition />
</StatelessService>
…
</ServiceTemplates>
<ServiceTemplates>
<StatelessService ServiceTypeName=“CardTransactionService" InstanceCount=“8">
<SingletonPartition />
<ServiceCorrelations>
<ServiceCorrelation Scheme="Affinity" ServiceName="fabric:/shopApp/paymentService"/>
</ServiceCorrelations>
</StatelessService>
</ServiceTemplates>
<ServiceTemplates>
<StatelessService ServiceTypeName=“UserCheckService" InstanceCount=“8">
<SingletonPartition />
<ServiceCorrelations>
<ServiceCorrelation Scheme="Affinity" ServiceName="fabric:/shopApp/cardTransactionservice"/>
</ServiceCorrelations>
</StatelessService>
</ServiceTemplates>
What can we run in
Service Fabric?
What can we run?
Service Fabric
Web Sites
Application
Custom
logic
How
• Multiple programing languages (C# & Java)
• Support different commucation mechanisms:
• HTTP(s)
• WCF
• TCP
• UDP
• Any protocol and communication stack is
supported
• Capable to run a guest executable
Conclusion
Conclusion
• Reliable Service vs Reliable Actor
• Stateless vs Stateful
• Timers and Reminders
• Lifecycle and GW
• Different solutions for the same problem
• Scalable, High Available, Flexible, Secure
Question
Answers
{
“name” : “Radu Vunvulea,
“blog” : “vunvulearadu.blogspot.com”,
“email” : ”vunvulear@outlook.com”,
“socialMedia” :
{
“twitter” : “@RaduVunvulea”,
“fb” : “radu.vunvulea”
}
}
Today: Enjoy the day
Tonight: Take a look on
https://github.com/Azure/
servicefabric-samples
What’s next?
{
“name” : “Radu Vunvulea,
“blog” : “vunvulearadu.blogspot.com”,
“email” : ”vunvulear@outlook.com”,
“socialMedia” :
{
“twitter” : “@RaduVunvulea”,
“fb” : “radu.vunvulea”
}
}

Contenu connexe

Tendances

ServiceFabric-Arch
ServiceFabric-ArchServiceFabric-Arch
ServiceFabric-Arch
Saravanan G
 

Tendances (20)

Azure web apps a cloud services for web and mobile - radu vunvulea
Azure web apps   a cloud services for web and mobile - radu vunvuleaAzure web apps   a cloud services for web and mobile - radu vunvulea
Azure web apps a cloud services for web and mobile - radu vunvulea
 
Amazon Web Services: Infrastructure in a few clicks
Amazon Web Services: Infrastructure in a few clicksAmazon Web Services: Infrastructure in a few clicks
Amazon Web Services: Infrastructure in a few clicks
 
Webhooks & Asp.Net
Webhooks & Asp.NetWebhooks & Asp.Net
Webhooks & Asp.Net
 
Charity Hound - Serverless, NoOps, The Tooth Fairy
Charity Hound - Serverless, NoOps, The Tooth FairyCharity Hound - Serverless, NoOps, The Tooth Fairy
Charity Hound - Serverless, NoOps, The Tooth Fairy
 
Journey and future of OpenStack eBay and PayPal
Journey and future of OpenStack eBay and PayPalJourney and future of OpenStack eBay and PayPal
Journey and future of OpenStack eBay and PayPal
 
LINE Botでテラレンの受付を自動化してみた
LINE Botでテラレンの受付を自動化してみたLINE Botでテラレンの受付を自動化してみた
LINE Botでテラレンの受付を自動化してみた
 
Divide and Conquer: Easier Continuous Delivery using Micro-Services
Divide and Conquer: Easier Continuous Delivery using Micro-ServicesDivide and Conquer: Easier Continuous Delivery using Micro-Services
Divide and Conquer: Easier Continuous Delivery using Micro-Services
 
Get Virtualized
Get VirtualizedGet Virtualized
Get Virtualized
 
"Serverless: The Future of Software Architecture" by Jason Wihardja (Bizzy In...
"Serverless: The Future of Software Architecture" by Jason Wihardja (Bizzy In..."Serverless: The Future of Software Architecture" by Jason Wihardja (Bizzy In...
"Serverless: The Future of Software Architecture" by Jason Wihardja (Bizzy In...
 
Real World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile ServicesReal World Architectures Using Windows Azure Mobile Services
Real World Architectures Using Windows Azure Mobile Services
 
Azure Service Bus Overview
Azure Service Bus OverviewAzure Service Bus Overview
Azure Service Bus Overview
 
The windows azure story
The windows azure storyThe windows azure story
The windows azure story
 
The RAW stack
The RAW stackThe RAW stack
The RAW stack
 
Mciro Services & Zookeeper
Mciro Services & ZookeeperMciro Services & Zookeeper
Mciro Services & Zookeeper
 
ServiceFabric-Arch
ServiceFabric-ArchServiceFabric-Arch
ServiceFabric-Arch
 
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ..."Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
 
Mobile Services AWS
Mobile Services AWSMobile Services AWS
Mobile Services AWS
 
Azure Durable Functions
Azure Durable FunctionsAzure Durable Functions
Azure Durable Functions
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.
 
ATD9 2013 One ASP.NET
ATD9 2013 One ASP.NETATD9 2013 One ASP.NET
ATD9 2013 One ASP.NET
 

Similaire à First 13 steps to be able to design an application for Azure Service Fabric

enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdf
EidTahir
 
Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)
Rick Hightower
 

Similaire à First 13 steps to be able to design an application for Azure Service Fabric (20)

Service Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications todayService Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications today
 
Microservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsMicroservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applications
 
Javantura v4 - Cloud-native Architectures and Java - Matjaž B. Jurič
Javantura v4 - Cloud-native Architectures and Java - Matjaž B. JuričJavantura v4 - Cloud-native Architectures and Java - Matjaž B. Jurič
Javantura v4 - Cloud-native Architectures and Java - Matjaž B. Jurič
 
Cloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyondCloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyond
 
Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...
Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...
Event-Driven Serverless Architecture - the next big thing in the cloud (Cleme...
 
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
Building the Serverless Container Experience: Kevin McGrath, Spotinst, Server...
 
Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdf
 
Microservice 微服務
Microservice 微服務Microservice 微服務
Microservice 微服務
 
Modern Software Architecture - Cloud Scale Computing
Modern Software Architecture - Cloud Scale ComputingModern Software Architecture - Cloud Scale Computing
Modern Software Architecture - Cloud Scale Computing
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Server Farms and XML Web Services
Server Farms and XML Web ServicesServer Farms and XML Web Services
Server Farms and XML Web Services
 
08 hopex v next service fabric
08 hopex v next   service fabric08 hopex v next   service fabric
08 hopex v next service fabric
 
Azure Service Fabric Overview
Azure Service Fabric OverviewAzure Service Fabric Overview
Azure Service Fabric Overview
 
Microservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration PatternsMicroservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration Patterns
 
Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)Service Mesh CTO Forum (Draft 3)
Service Mesh CTO Forum (Draft 3)
 
Azure service fabric overview
Azure service fabric overviewAzure service fabric overview
Azure service fabric overview
 
Patterns of Distributed Application Design
Patterns of Distributed Application DesignPatterns of Distributed Application Design
Patterns of Distributed Application Design
 
AppSphere 15 - Microsoft Azure for Developers & DevOps
AppSphere 15 - Microsoft Azure for Developers & DevOpsAppSphere 15 - Microsoft Azure for Developers & DevOps
AppSphere 15 - Microsoft Azure for Developers & DevOps
 
Twelve Factor App
Twelve Factor AppTwelve Factor App
Twelve Factor App
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

First 13 steps to be able to design an application for Azure Service Fabric