build intelligent solutions using azure
TRANSCRIPT
Build Intelligent Microservices Solutions using AzureMostafa ElzoghbiSr. Technical Evangelist @ Microsoft @MostafaElzoghbihttp://mostafa.rocks
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
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.
Legacy/Monolithic Architecture
Three-Tier Monolithic Application with Caches
Microservices Architecture
Cluster of Servers with Deployed Microservices
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
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.
Cloud Services Cont. Flexible configuration per role in cloud services:
Configuration: # instances, size, startup endpoints
Settings: key/value Endpoints Storage Certificates Caching
Cloud Services Cont.
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
DemoCase Manager in Cloud Services
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
Azure App Service in Azure Portal
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)
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
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
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
DemoWorking with App Service settings in Azure Portal
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
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
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
Programing ModelsReliable ServicesMicroservicesStateless and Stateful semantics.
Reliable ActorsConcurrency make easy.
IChatService proxy = ServiceProxy.Create<IChatService>(chatServiceInstance, new ServicePartitionKey(1));
MICROSOFT CONF IDENT IAL – INTERNAL ONLY
DemoBuild First Reliable Stateful Service Fabric App
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
Thank You
@MostafaElzoghbihttp://mostafa.rocks