build intelligent solutions using azure

25
Build Intelligent Microservices Solutions using Azure Mostafa Elzoghbi Sr. Technical Evangelist @ Microsoft @MostafaElzoghbi http://mostafa.rocks

Upload: mostafa-elzoghbi

Post on 09-Jan-2017

631 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Build intelligent solutions using Azure

Build Intelligent Microservices Solutions using AzureMostafa ElzoghbiSr. Technical Evangelist @ Microsoft @MostafaElzoghbihttp://mostafa.rocks

Page 2: Build intelligent solutions using Azure

Session Objectives And Takeaways Benefits of creating micro services in the cloud

End-To-End Use case for building cloud service with web & worker roles with service bus integration

Azure App Service intelligent features including troubleshooting, CI, back up, routing, scheduling & other features

Azure Service Fabric microservices platform

Page 3: Build intelligent solutions using Azure

Benefits of Microservices A microservice is software building block that does

one thing and does it well. Azure supports building loosely coupled systems

using micro services for web, mobile, IoT and Big Data solutions that interact seamlessly in a persistent & highly available platforms.

Microservices take advantage of automation, elasticity, resilience of Azure IaaS & PaaS hosting options.

Page 4: Build intelligent solutions using Azure

Legacy/Monolithic Architecture

Three-Tier Monolithic Application with Caches

Page 5: Build intelligent solutions using Azure

Microservices Architecture

Cluster of Servers with Deployed Microservices

Page 6: Build intelligent solutions using Azure

Cloud Services Is a PaaS hosted option in Microsoft Azure A technology is designed to support apps that are

scalable, reliable, and cheap to operate Hosted on Virtual Machines You can remote access into Cloud Services VMs Deploy highly-available, infinitely-scalable

applications and API Focus on apps, not hardware. Support for java, Node.js, PHP, Python, .NET and

Ruby. Auto scale to meet demand and save money (scale

up or down), Deploy thousands of instances in minutes

Page 7: Build intelligent solutions using Azure

Cloud Services Cont. Any combination of these two slightly different VM

hosting options are available in a cloud service:• Web role

Runs Windows Server with your web app automatically deployed to IIS.

• Worker roleRuns Windows Server without IIS.

• You can add a console app as a web job in web role.

Page 8: Build intelligent solutions using Azure

Cloud Services Cont. Flexible configuration per role in cloud services:

Configuration: # instances, size, startup endpoints

Settings: key/value Endpoints Storage Certificates Caching

Page 9: Build intelligent solutions using Azure

Cloud Services Cont.

Page 10: Build intelligent solutions using Azure

Use Case: Case Management An application that accepts user claims information

and process these requests “time consuming processing” into other systems.

Implementation #1:• User claims Web Role in a cloud service• Process requests Worker Role in a cloud service

Implementation #2:• User claims Web Role in a cloud service• Process requests A Web Job in a web role

Page 11: Build intelligent solutions using Azure

DemoCase Manager in Cloud Services

Page 12: Build intelligent solutions using Azure

App Service Azure App Service is a cloud app service that

integrates everything you need to quickly and easily build web and mobile apps for any platform or device.

Code in your favorite language and IDE. Use .NET, NodeJS, PHP, Python, Java to build web

apps or APIs faster than ever.

Scale apps on-demand with high availability. Broadcast personalized push notifications to millions

in minutes

Page 13: Build intelligent solutions using Azure

Azure App Service in Azure Portal

Page 14: Build intelligent solutions using Azure

Intelligent Troubleshooting App Service offers: Support and troubleshooting features

Resource health App Service Advisor New support Ticket

Easy to scale up or out for service plans

MySQL in App (preview)

Page 15: Build intelligent solutions using Azure

Development Tools App Service offers

Kudu services: process explorer, debug console, Files, PS..etc.

Performance test: create load tests Extensions Testing in production Console Clone app

Page 16: Build intelligent solutions using Azure

Intelligent CI Easy to publish code from various repositories:

VSTS, OneDrive, Local Git repo, GitHub, BitBucket, Dropbox & External repository.

Deployment creds to share for FTP clients

Easy to manage multiple deployment slots A great way manage continuous builds

Integrate with VSTS build server to automate builds

Page 17: Build intelligent solutions using Azure

Intelligent Features The ability to add webjobs within the same

deployments Manage custom domains and SSL certificates Setup Networking configuration Define APIs settings Urls Configure CORS settings Traffic routing per deployment slot Automated and scheduled backups Custom domains & SSL configuration

Page 18: Build intelligent solutions using Azure

DemoWorking with App Service settings in Azure Portal

Page 19: Build intelligent solutions using Azure

Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices and addresses the significant challenges in developing and managing cloud applications. 

Service Fabric represents the next-generation middleware platform for building & managing these enterprise-class, Tier-1 cloud-scale applications.

Service Fabric

Page 20: Build intelligent solutions using Azure

Why is a microservices approach important? The two main reasons are: They enable you to scale different parts of your application

depending on its needs. Development teams are able to be more agile in rolling out

changes and thereby provide features to your customers faster and more frequently.

Service Fabric powers many Microsoft services today, including Azure SQL Database, Azure DocumentDB, Cortana, Power BI, Microsoft Intune, Azure Event Hubs, Azure IoT, Skype for Business, and many core Azure services to name a few.

Why Service Fabric

Page 21: Build intelligent solutions using Azure

Azure Service FabricVNext PaaS offering

Battle tested – internally used by +5 years in large systems

State of the art orchestration and management

Stateful and Stateless programming model

Page 22: Build intelligent solutions using Azure

Programing ModelsReliable ServicesMicroservicesStateless and Stateful semantics.

Reliable ActorsConcurrency make easy.

IChatService proxy = ServiceProxy.Create<IChatService>(chatServiceInstance, new ServicePartitionKey(1));

Page 23: Build intelligent solutions using Azure

MICROSOFT CONF IDENT IAL – INTERNAL ONLY

DemoBuild First Reliable Stateful Service Fabric App

Page 24: Build intelligent solutions using Azure

Session Objectives And Takeaways Benefits of creating micro services in the cloud

End-To-End Use case for building cloud service with web & worker roles with service bus integration

Azure App Service intelligent features including troubleshooting, CI, back up, routing, scheduling & other features

Azure Service Fabric microservices platform

Page 25: Build intelligent solutions using Azure

Thank You

@MostafaElzoghbihttp://mostafa.rocks