Download presentation
Presentation is loading. Please wait.
Published byLuke Cain Modified over 9 years ago
3
The microservices approach
5
Scales by cloning the app on multiple servers/VMs/Containers Monolithic application approach Microservices application approach A microservice application separates functionality into separate smaller services. Scales out by deploying each service independently creating instances of these services across servers/VMs/containers A monolith app contains domain specific functionality and is normally divided by functional layers such as web, business and data App 1 App 2 App 1
8
Single monolithic database Tiers of specific technologies State in Monolithic approach State in Microservices approach Graph of interconnected microservices State typically scoped to the microservice Variety of technologies used stateless services stateless services with separate stores stateful services stateless presentation services
9
Azure Developer Platform Application Code More control Max control Cloud Services Service Fabic Web Apps SQL Database Redis Cache DocumentDB SQL Data Warehouse Search Tables HDInsight Data Factory Stream Analytics Machine Learning Event Hubs Mobile Engagement Service Bus Storage Queues Biztalk Services Active Directory Productivity Control Application Platform
10
Service Fabric High Availability Hyper-Scale Hybrid Operations High Density Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Resource balancing Self-healing Data Partitioning Automated Rollback Health Monitoring Placement Constraints Azure Private cloud Other clouds
11
Demo: Building your first microservice with Service Fabric
12
Services built with Service Fabric
13
300+ Service Fabric Preview Customers
17
Demo: Creating a Service Fabric cluster via the portal
18
Building and managing microservice applications
19
AzureOther cloudsPrivate cloud Service Fabric Programming Models Service Fabric Scalability Availability Performance Lifecycle management PortabilityMonitoring
21
using (var fabricRuntime = FabricRuntime.Create()) { fabricRuntime.RegisterActor(typeof(HelloWorldActor)); public class HelloWorldActor : Actor, IHelloWorld {... } public interface IHelloWorld : IActor {... }
22
Demo: Building reliable actor applications
23
Build stateless services using existing technologies such as ASP.NET, node.js, EXEs etc Manage concurrency and granularity of state changes with transactions in stateful services. Communicate with services using the technology of your choice (e.g Web API, WCF, [web]sockets, etc).
24
Reliable collections make it easy to build stateful services. An evolution of.NET collections for the cloud.
25
Data is replicated and durably stored on multiple replicas. Atomically update one or more collections using transactions. Supports LINQ. Reliable Collections IReliableQueue IReliableDictionary
26
Service Fabric Stateful Service Cloud Services OR Service Fabric Stateless Service Azure Tables/NoSQL Azure Queue
27
Demo: Building reliable service applications
28
Azure Cloud Services (Web and Worker Roles) Azure Service Fabric (Stateless, stateful or Actor services) 1 service instance per VM with uneven workloads Lower compute density Slow in deployment & upgrades Slower in scaling and disaster recovery Many microservices per VM High microservices density Fast deployment & upgrades Fast scaling microservices across the cluster
29
Example Customer Solutions
30
Benefits Blinkbox, the UKs leading video-on-demand service delivering TV and movie content across multiple-devices Agility - Ability to upgrade microservices independently and without downtime. No need to coordinate DB schema with app upgrades Programming API - Using actors and reliable collections to easily orchestrate the encoding and resolution of the on-demand content Scalability - Real time résolution for 30K titles, designed to scale for growth of users, devices and content Replacing existing IaaS/DB backed system with microservices solution 1.5 PB of for streaming content delivered to millions of customers using Azure Media Services Microservices workflow for content encoding and resolution
31
DocumentDB (Ad-hoc searching, long term data storage) Content Master App Content Profile App KeyStore App Resource Resolution App Azure Media Services Job Management App Encryption Job Management App Service Fabric Cluster Encoding Workflow App Media Services Batch Compute Management API Microservices workflow for content encoding
32
Actor Activity Service Activity Step Service Activity Actor Activity Step Actor Content Master App Content Profile App KeyStore App Resource Resolution App Service Fabric Cluster Encoding Workflow App Management API Azure Media Services Job Management App Encryption Job Management App Batch Compute Media Services DocumentDB (Ad-hoc searching, long term data storage) API Service (OWIN/ASP.Net) Microservices workflow for content encoding
33
Benefits Schneider Electric develops connected technologies and solutions to manage energy and process in ways that are safe, reliable, efficient and sustainable Density and Availability – VM utilization enables managing millions of devices with automatic failover Actor Programming API – Service Fabric has the simplest-to-use actor model implementation in the market Scale – Service Fabric simplifies scale. With millions of devices we need partitioning and resource balancing that makes this transparent Management & operation of devices. Query and execute commands, send commands from device to LOB apps Communicate with devices securely and in multiple protocols Processing and latency need to be sub-second Integration Azure services such as Event Hubs and storage. Microservices IoT solution to manage uninterruptable power supplies (UPS)
34
LOB App Data Collection System M2M Device Identity Service Storage Management Service Device Actors Service Commands & State Enquiry Connection Egress Topic Application Notifications Queue Ingress Event Hub SignalR Notification Http Req Device Gateway Analysis Notifications Queue Stream Analytics Device Adaptor Service REST API Service Service Fabric Cluster Microservices IoT solution to manage devices
39
Application EventSource ElasticSearch EventListener Elasticsearch Cluster Event Hub (optional) Service Fabric Runtime WAD Azure Table IaaS VM Operational Insights Portal OI Pipeline ELK Pipeline
41
Platform Services Infrastructure Services Web Apps Mobile Apps API Management API Apps Logic Apps Notification Hubs Content Delivery Network (CDN) Media Services BizTalk Services Hybrid Connections Service Bus Storage Queues Hybrid Operations Backup StorSimple Azure Site Recovery Import/Export SQL Database DocumentDB Redis Cache Azure Search Storage Tables Data Warehouse Azure AD Health Monitoring AD Privileged Identity Management Operational Analytics Cloud Services Batch RemoteApp Service Fabric Visual Studio App Insights Azure SDK VS Online Domain Services HDInsight Machine Learning Stream Analytics Data Factory Event Hubs Mobile Engagement Data Lake IoT Hub Data Catalog Security & Management Azure Active Directory Multi-Factor Authentication Automation Portal Key Vault Store/ Marketplace VM Image Gallery & VM Depot Azure AD B2C Scheduler
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.