Sam Vanhoutte CTO Codit, Integration MVP Azure Service Fabric: notes from the field.

Slides:



Advertisements
Similar presentations
System Center 2012 R2 Overview
Advertisements

“It’s going to take a month to get a proof of concept going.” “I know VMM, but don’t know how it works with SPF and the Portal” “I know Azure, but.
Microsoft Ignite /16/2017 2:42 PM
Features Scalability Availability Latency Lifecycle Data Integrity Portability Manage Services Deliver Features Faster Create Business Value.
Build /16/2017 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.
Building Resilient, Scalable Services with Microsoft Azure Service Fabric Mark Fussell Principal Program Manager Vipul Modi Principal Software.
Overview Of Microsoft New Technology ENTER. Processing....
Virtual techdays INDIA │ 9-11 February 2011 The Whole New Windows Azure Platform Management Portal Saranya Sriram │ Developer Evangelist, Microsoft.
DatacenterMicrosoft Azure Consistency Connectivity Code.
| Basel Discovering Windows Azure Mobile Services and Media Services Ken Casada
Manage & Configure SQL Database on the Cloud Haishi Bai Technical Evangelist Microsoft.
Windows Azure SQL Database and Storage Name Title Organization.
ATIF MEHMOOD MALIK KASHIF SIDDIQUE Improving dependability of Cloud Computing with Fault Tolerance and High Availability.
Introduction To Windows Azure Cloud
Austin code camp 2010 asp.net apps with azure table storage PRESENTED BY CHANDER SHEKHAR DHALL
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Microsoft Business Continuity Solutions: Azure Site Recovery
Visual Studio Windows Azure Portal Rest APIs / PS Cmdlets US-North Central Region FC TOR PDU Servers TOR PDU Servers TOR PDU Servers TOR PDU.
How* to Win the #BestMicrosoftHack Shahed Chowdhuri Sr. Technical WakeUpAndCode.com *Hint: Use the Cloud.
Windows Azure Virtual Machines Anton Boyko. A Continuous Offering From Private to Public Cloud.
Building micro-service based applications using Azure Service Fabric
The microservices approach Scales by cloning the app on multiple servers/VMs/Containers Monolithic application approach Microservices application.
Windows Azure. Azure Application platform for the public cloud. Windows Azure is an operating system You can: – build a web application that runs.
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Creating highly available and resilient Microservices on Microsoft Azure Service Fabric
Windows Azure poDRw_Xi3Aw.
Features Scalability Manage Services Deliver Features Faster Create Business Value Availability Latency Lifecycle Data Integrity Portability.
Mick Badran Using Microsoft Service Fabric to build your next Solution with zero downtime – Lvl 300 CLD32 5.
Microsoft Cloud Computing. Topics to be covered 1.Environmental Features of windows azure 2.What is Cloud Computing 3.Roles in Cloud Computing 4.Benefits.
Technology Drill Down: Windows Azure Platform Eric Nelson | ISV Application Architect | Microsoft UK |
Building Cloud Solutions Presenter Name Position or role Microsoft Azure.
ALL INFORMATION PRESENTED AS WELL AS ALL SESSIONS ARE MICROSOFT CONFIDENTIAL AND UNDER YOUR NON-DISCLOSURE AGREEMENT (NDA) AND\OR TECHNOLOGY PREVIEW.
And scales by cloning the app on multiple servers/VMs/Containers Traditional architecture approach Microservices architecture approach A microservice.
Copyright © New Signature Who we are: Focused on consistently delivering great customer experiences. What we do: We help you transform your business.
Agility Dev TestDeploy Learn Agility.
The best of WF 4.0 and AppFabric Damir Dobric MVP-Connected System Developer Microsoft Connected System Division Advisor Visual Studio Inner Circle member.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Brian Lauge Pedersen Senior DataCenter Technology Specialist Microsoft Danmark.
Microservice Best Practices Lessons Learned from Azure Service Fabric Mark Russinovich CTO, Microsoft
Build /26/2018 6:17 AM Building Resilient, Scalable Services with Microsoft Azure Service Fabric Érsek © 2015 Microsoft Corporation.
Our First Service Fabric Release
BRK1036 Building applications with Microsoft Azure Service Fabric on Windows and Linux Subramanian Ramaswamy (Mani) Sean McKenna
DocFusion 365 Intelligent Template Designer and Document Generation Engine on Azure Enables Your Team to Increase Productivity MICROSOFT AZURE APP BUILDER.
Connected Maintenance Solution
OpenLegacy Training Day Four Introduction to Microservices
Parcel Tracking Solution Parcel Tracking What to look for Architecture
Microservices with Azure Service Fabric Building and Running Services at Scale
Lead SQL BankofAmerica Blog: SQLHarry.com
Docker Birthday #3.
In-Depth Introduction to Docker
Connected Maintenance Solution
7/18/2018 8:55 PM Migracija IoT rešenja na Azure PaaS model ili: Kako sam prestao da brinem o IT infrastrukturi i zavoleo Azure Nebojša Stojanović © Microsoft.
Building Applications with Windows Azure and SQL Azure
Introduction to Microservices Prepared for
In-Memory Performance
Building Microservices Applications on Azure Service Fabric
Microsoft Azure Service Fabric Overview
Service Fabric Patterns & Best Practices
2017 Real Questions
Serverless CQRS in Azure!
Microsoft Build /8/2018 5:15 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Azure Container Instances
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Developing for the cloud with Visual Studio
Learn. Imagine. Build. .NET Conf
Saranya Sriram Developer Evangelist | Microsoft
Technical Capabilities
Day 2, Session 2 Connecting System Center to the Public Cloud
Johan Lindberg, inRiver
Containers on Azure Peter Lasne Sr. Software Development Engineer
Presentation transcript:

Sam Vanhoutte CTO Codit, Integration MVP Azure Service Fabric: notes from the field

Hello world 2 International Focus Active customers 2000 Belgium 2004 France 2013 Portugal 2016 Switzerland 2016 U.K. Close collaboration with Microsoft +70 employees e-news + SoMe Focused on integration Integration MVP CTO Integration Azure IoT API mgmt

Agenda Introduction Positioning Architecture Concepts Scenarios 3

Services built with Service Fabric

300+ Service Fabric Preview Customers

Positioning µ-services 6

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

Cloud Services vs. Service Fabric Azure Cloud Services (Web and Worker Roles) Azure Service Fabric (Stateless, stateful or Actor services) 1 role instance per VM Uneven utilization Low density Slow deployment & upgrade (bound to VM) Slow scaling and failure recovery Limited fault tolerance Many microservices per VM Even Utilization (by default, customizable) High density (customizable) Fast deployment & upgrade Fast scaling of independent microservices Tunable fast fault tolerance Node types !

Architecture resilient against failure 9

Microsoft Azure Service Fabric A platform for reliable, hyperscale, microservice-based applications Azure Windows Server Linux Hosted Clouds Windows Server Linux Service Fabric Private Clouds Windows Server Linux High Availability Hyper-Scale Hybrid Operations High Density Microservices Rolling Upgrades Stateful services Low Latency Fast startup & shutdown Container Orchestration & lifecycle management Replication & Failover Simple programming models Load balancing Self-healing Data Partitioning Automated Rollback Health Monitoring Placement Constraints Develop once deploy everywhere Develop once deploy everywhere

App1App2 Service Fabric Microservices App Type PackagesService Fabric Cluster VMs

App1App2 Handling Machine Failures App Type PackagesService Fabric Cluster VMs

Concepts µ-services 13

State is external or non existing Multi-instance (parallel execution) Load balancing (singleton partition) Activation & Background work State is external or non existing Multi-instance (parallel execution) Load balancing (singleton partition) Simplified programming model Single threaded execution Turn based communication [StatePersistence(StatePersistence.None)] State is stored with the service Reliable secondaries exist on other nodes Ranged or named partitioning Concurrent transactional state changes Reliable collections Activation & Background work State is stored with the service Reliable secondaries exist on other nodes Ranged or named partitioning Simplified programming model Single threaded execution Turn based communication [StatePersistence(StatePersistence.Persisted)] Programming models 14 StatefulStateless Services Actors Guest executables

State is external or non existing Multi-instance (parallel execution) Load balancing (singleton partition) Activation & Background work Web API’s Web Frontend Protocol Gateway Background Workers State is external or non existing Multi-instance (parallel execution) Load balancing (singleton partition) Simplified programming model Single threaded execution Turn based communication [StatePersistence(StatePersistence.None)] State is stored with the service Reliable secondaries exist on other nodes Ranged or named partitioning Concurrent transactional state changes Reliable collections Activation & Background work State is stored with the service Reliable secondaries exist on other nodes Ranged or named partitioning Simplified programming model Single threaded execution Turn based communication [StatePersistence(StatePersistence.Persisted)] Short Lived actions Fire & Forget Services, containing partitioned data Stateful receivers (locking, cursors) Simple queuing workers Caching scenarios Longer running workflows Related to functional entities: Shopping Basket, Conversations, Users, Sensors Programming models 15 StatefulStateless Services Actors Keep it simple to start Often state still requires sync to external data source

Service type ➔ Services types are composed of code/config/data packages ➔ Code packages define an entry point (dll or exe) ➔ Config packages define service specific config information ➔ Data packages define static resources (eg. images) ➔ Packages can be independently versioned ServiceHost.exe

Application type ➔ Declarative template for creating an application ➔ Based on a set of service types ➔ Used for packaging, deployment, and versioning

Service Partitioning Node 5 Node 4 Node 3 Node 6 Node 2 Node 1 P2 S S S P4 S P1 S P3 S S S Services can be partitioned for scale-out. You can choose your own partitioning scheme. Service partitions are striped across machines in the cluster. Replicas automatically scale out & in on cluster changes

Scenarios

Connected Building ➔ Enable state machine behavior for buildings, rooms, devices ➔ Scenario ➔ Physical events are ingested (Codit IoT field gateway) ➔ Event routing Events are routed to the right device Actor Related infrastructure actors can observe events from their devices (Meeting room 1 wants to get events from Motion sensor 01) ➔ Stateful workflows (state machines)

Connected building 21 Diagram: Tom Kerkhove Open Sourced Observer framework:

Talk2Fans – a startup for sport clubs ➔ Social (few writes, lot’s of reads) ➔ Talkies per club ➔ Talkies per game ➔ Push notifications ➔ Advertising ➔ Targetted advertising with telemetry ➔ Reporting needs

Talk2Fans – a startup for sport clubs 23 Diagram: Thomas Houtekier

City camp reservation systems ➔ Registering kids for holiday-camps (sports, leisure, language…) ➔ Big peak of requests (ticketing system) on predefined timestamps ➔ Per camp, first X registered persons are allowed ➔ Ticket dispenser service needed to distribute tickets to allow further registration.

Node 01 Node 02 Node 03 Node 04 Node 05 City camp reservation system 25 REST API Stateless svc (OWIN) Communication Stateful svc (ReliableQueue) Latin Sport Dev Music Latin Math Dev Math Music Sport Math Ticket dispenser Stateful actors Jim Tom Jim TomJosh Ann Tom AnnJosh Registration process per user

Integration Cloud ➔ Started 6 years ago on Cloud Services. Challenges: ➔ Complex task & thread management ➔ Deployment and versioning ➔ Multi-tenancy ➔ Migration to Service Fabric ➔ Reliable services for adapters ➔ Stateful actors for tracking logic ➔ High density / multi tenancy ➔ Side by side versioning

Integration Cloud – multi tenancy 27 Diagram: Wouter Seye

Thank you! Keep in touch! Call or mail us. Ask questions. Happy to help. Stay tuned LinkedIn blog.codit.eucodit.euNewsletterTwitter Pay us a visit