In this session we will take a look on Azure Service Fabric and how we can create a web application using ASP.NET Core and microservices. During the presentation we will create a web application that will be hosted in Azure Service Fabric and use the most important capabilities of Azure Service Fabric.
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
Azure Microservices in Practice - Radu Vunvulea
1. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Azure Microservices in Practice
Radu Vunvulea
Solution Architect, iQuest Technologies
Microsoft Azure MVP
@RaduVunvulea
4. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
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
8. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Software architecture style in which complex
applications are composed of small, independent
processes communicating with each other using
language-agnostic APIs
Microservices
10. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
If we need a system that has components that are…
High decoupled
Small
Easy to replace
Focus on doing a small task
Independent deployment units
Symmetrical architecture
11. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Evolution
Maintenance
is hard
Adding new
features is slow
Changes are
expensive
Technology
becomes the
obstacle rather
than enabler
App Modernization
14. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Service Fabric | Azure Service Fabric
Microservices
Cloud
Azure
Azure Service
Fabric
AWS Service Fabric
On-premises Service Fabric
15. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Overview
Service Fabric
Azure
Windows
Server
Linux
On-premises
Windows
Server
Linux
Hosted clouds
Windows
Server
Linux
Micros
ervice
Micros
ervice
Micros
ervice
Micros
ervice
Micros
ervice
17. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
ReliableService •Classical
service
•Reliable
•Available
•Scalable
Actor
•State
•Turn-base
access
•Single
thread
•Reentrancy
21. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
• 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
How
30. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
• Local debugging like any other .NET application
• Attach debugger to any Service Fabric Application
(on-premises or cloud)
• Diagnostic Events persistent in Cluster
• Real time Streaming Traces (Diagnostics Events)
Debugging and tracing
32. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
• Low latency
• High-throughput
• Transactional
• Can be used only
with Reliable Services
Reliable Collections
Dictionary
and
Queue
Replicat
ed
Persiste
d
In-
memory
<<servic
e
instance
>>
Asynchr
onous
Transacti
onal
34. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
• Different instances of the same
service can access the same
Reliable Collection
• Instances from different
services cannot access the
same collection
Reliable Collection – visibility
37. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
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
43. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Events
• Send events and
notifications from
services to caller
• Allows us be notified at
different steps on when
an exception occurs
• Can be used only for
actor-client
communication
44. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
• On Actor:
– IActorEvents
– Trigger our custom events
• On source:
– Implement callback (Event Handler)
– Subscribe our Event Handler
Events
50. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Where we can control them
Application
• Partitioning
• Replication
Cluster
• Fault Domain
• Upgrade Domain
• Naming Service
• Resource
Balancer
• Failover Manager
54. @ITCAMPRO #ITCAMP16Community Conference for IT Professionals
Today: Enjoy ITCamp Day 1
Tomorow: Enjoy ITCamp Day 2
Saturday: Take a look on
https://github.com/Azure/
servicefabric-samples