Azure PaaS v2 与微服务架构 应用开发 王启霄 微软中国 开发体验与平台合作事业部 Objective • Microservice introduction and key principles Service Fabric introduction and positioning within Microsoft development platform Session Objectives And Takeaways Learn how to Build Service Fabric services (stateless, stateful, actor-services) • • • Learn on deployment of Service Fabric services locally Takeaway: • Microservices is key for high-scalable and complex/large applications • Service Fabric is especially made for microservices approaches Traditional architecture approach A traditional application (web app or large service) usually has most of its functionality within a single process (Commonly internally layered, though). And scales by cloning the app on multiple servers/VMs/Containers Microservices architecture approach App 1 App 1 A microservice approach segregates functionality into separate services. And scales out by deploying independently and replicating these services across servers/VMs/containers App 2 Traditional Application • • • Single app process or 3 Tier approach Several modules Layered modules 3 Tier approach Single app process Microservices approach Presentation services UI Or.. Stateful services Stateless services with related databases Single monolithic database Microservices and databases Microsoft Azure Service Fabric Microservices High Availability Simple programming models Data Partitioning Hybrid Operations Rolling High Density Automated Upgrades Hyper-Scale Rollback Windows Server Service Fabric Low Latency Stateful services Container Orchestration & lifecycle management Placement Fast startup & Load balancing Constraints shutdown Health Monitoring Windows Server Linux Azure Self-healing Replication & Failover Linux Hosted Clouds Windows Server Linux Private Clouds Proven platform for hyperscale • Tested and internally used by Microsoft for quite a few years (aka. internally “Windows Fabric”) • Service Fabric is the foundational platform for many high scalable services at Microsoft Vertical compute PaaS General Compute PaaS Cluster Orchestration IaaS and IaaS+ Infrastructure Apprenda, CloudFoundry Jelastic, Marathon Web Apps Mobile Apps App Service Media Batch Service Fabric (VMs and Containers) SCALR, RightScale, Mesos, Swarm VM Extensions VMs and VM Scale Sets Azure-Consistent Private Cloud Azure Public Cloud Azure Compute Continuum IaaS PaaS VMs / VM Scale Sets Ultimate Control VM Extensions Cloud ServiceServices Fabric Stateless Stateful Web Role Actors Worker Role App Service Web App Mobile App API App Logic App Rapid Development Node Node Node Node Node Node System Services Failover manager Cluster manager Naming Image store Azure Cloud Services Azure Service Fabric (Web and Worker Roles) • • • • 1 service instance per VM with uneven workloads Lower compute density Slow in deployment & upgrades Slower in scaling and disaster recovery (Stateless, stateful or Actor services) • • • • Many microservices per VM High microservices density Fast deployment & upgrades Fast scaling microservices across the cluster • • Applications composed of microservices Reliable Services API High Availability Simple programming models Hybrid Operations High Density Hyper-Scale Azure Data Partitioning Rolling Upgrades Automated Rollback Reliable Actors API Service Fabric Low Latency Stateful services Container Orchestration & lifecycle management Placement Fast startup & Load balancing Constraints shutdown Health Monitoring Private Clouds Self-healing Replication & Failover Reliable Collections Collections Concurrent Collections • Single machine • Single threaded • Single machine • Multi threaded • Multi machine • Multi threaded • Replicated (HA) • Persistence • Asynchronous • Transactional
2015-《AzurebPaas与微服务架构应用开发-王启霄》
温馨提示:如果当前文档出现乱码或未能正常浏览,请先下载原文档进行浏览。
本文档由 张玉竹 于 2022-04-08 10:34:00上传分享