SlideShare una empresa de Scribd logo
1 de 26
Brian Ritchie
Chief Architect
Payformance Corporation
Email: brian.ritchie@gmail.com
Blog: http://weblog.asp.net/britchie
Web: http://www.dotnetpowered.com
Scale Out your .NET applications by leveraging
IIS7, AppFabric, Web Farm Framework, and Web Deploy
Brian Ritchie
» Chief Architect at Payformance Corporation
» Nearly 20 years of development experience
» Developing on .NET since 1.0 Beta 1
» Contributed to Mono and other open source
projects
» Increases Reliability
» Increases Performance
» Provides Elastic Scalability
» Design Considerations
» Management Complexities
» Maintenance Challenges
» Load Balancing
˃Network Load Balancing
˃Queued Processing
˃Workflow Distribution
» Distributed Caching
» Use load balancing to spread work across multiple
machines
˃Building out instead of building up uses lower cost
resources
˃Elastic scaling for extra capacity
˃Prevent single point of failure
» Network Load Balancing
˃ NLB: Network Load Balancer
˃ ARR: Application Request Routing
˃ F5 BigIP Local Traffic Manager
» Workflow Distribution
˃ Windows Server AppFabric
» Queued Processing
˃ Pick a queue: MSMQ, SQL Service Broker, SQL Table, etc.
˃ Process it with a multi-threaded Always-On Services
Queue
Workers
Enqueue
0
10
20
30
40
50
60
70
80
90
100
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Normal
Queued
» Using caching to decrease load on
centralized database resources
» Load balanced web servers required
shared session
» A Distributed Cache has these benefits:
˃In-Memory for Performance
˃Replicated for Reliability
˃ASP.NET providers for easy integration
˃Doesn’t add a single point of failure
» Options
˃Windows Server AppFabric Cache (“Velocity”)
˃MemCached
» A scaled out infrastructure presents its own set of
challenges:
˃How do I provision resources easily?
˃Do I need to manage each machine individually?
˃How do I deploy application updates?
˃How do I automate the manual tasks?
» IIS7+AppFabric: Application Platform
˃ Unified application platform: web sites, web services, always-on services
˃ Move your Windows Services to IIS7 with AppFabric to improve
management & deployment
» Web Deploy 2.1
˃Combines all build resources into one package and
makes deploying applications to the host server easy
˃Components
• Command-line tools
• Server-side service
• MSBuild packaging support
• Visual Studio configuration integration
» Web Deploy 2.1
Build/Deploy Server
Deploy
IIS
Server
IIS MMC – Import Application
Package
Build Server
(using MSBuild)
Deployment
Package
IIS MMC – Export Application
» Web Farm Framework 2.0
˃Centralized farm management
˃Easily provision resources
˃Distribute updates across the farm
˃Ease maintenance with rolling upgrades & automatic
load balancer control
˃Extensible: Plug-ins for managing 3rd party load
balancers
» Web Farm Framework 2.0
control
Primary
control
synchronize
deploy
» Windows Server AppFabric Dashboard
Hardware load balancer
BigIP F5
Web Farm
• ASP.NET Web Application
• IIS7
• Web Farm Framework 2.0
• Windows Server AppFabric
• ASP.NET AppFabric Session Provider
• Web Deploy
Cache Cluster
• AppFabric Cache Service
Deployer
• Web Deploy
» System Center Operations Manager with
Windows Server AppFabric Management Pack
˃ AppFabric Event Collection service
˃ AppFabric Workflow Management service
˃ AppFabric Caching Service
˃ AppFabric SQL monitoring databases
˃ AppFabric SQL Workflow Instance Stores
˃ AppFabric database connections
˃ IIS Hosted WCF and WF services
» Automate using:
» Automation tools cover:
• AppFabric
• IIS7
• Web Farm Farmwork
Powershell
API
» Web Farm Framework
˃ Web Farm Framework
http://www.iis.net/download/WebFarmFramework
˃ Scott Gu’s Introduce to WFF 2.0
http://weblogs.asp.net/scottgu/archive/2010/09/08/introducing-the-microsoft-web-farm-framework.aspx
˃ WFF Documentation (including API & Powershell)
http://learn.iis.net/page.aspx/905/microsoft-web-farm-framework-20-for-iis-7/
» Windows AppFabric
˃ AppFabric Architecture Guide
http://blogs.msdn.com/b/yasserabdelkader/archive/2010/09/12/release-of-windows-server-appfabric-architecture-guide.aspx
˃ AppFabric Management Pack for Op Mgr 2007
http://blogs.technet.com/b/appfabric/archive/2010/06/14/appfabric-management-pack-available-for-operations-manager-
2007.aspx
˃ AppFabric Presentation
http://rstonkus.wordpress.com/2010/10/28/partner-conference-windows-server-appfabric/
» Other
˃ Memcached ASP.NET Providers
http://memcachedproviders.codeplex.com/
˃ SQL Table Queues
http://www.mssqltips.com/tip.asp?tip=1257
˃ Azure Scalability using Queues
http://www.cloudbook.net/resources/stories/-azure-scalability--use-queues-as-your-bridges
˃ Web Deploy Team Blog
http://blogs.iis.net/msdeploy/default.aspx
˃ Application Request Routing
http://www.iis.net/download/ApplicationRequestRouting
http://learn.iis.net/page.aspx/486/http-load-balancing-using-application-request-routing/
http://blogs.iis.net/mailant/archive/2010/03/25/how-iis-application-request-routing-arr-powers-elastic-scale-for-
maximumasp.aspx

Más contenido relacionado

La actualidad más candente

ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSMark Leusink
 
OSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the EnterpriseOSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the EnterpriseEric Shupps
 
Ordina SOFTC Presentation - Desktop Virtualization
Ordina SOFTC Presentation - Desktop VirtualizationOrdina SOFTC Presentation - Desktop Virtualization
Ordina SOFTC Presentation - Desktop VirtualizationOrdina Belgium
 
BizTalk Server Extensibility
BizTalk Server ExtensibilityBizTalk Server Extensibility
BizTalk Server ExtensibilityBizTalk360
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodologylaeshin park
 
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...Nima Badiey
 
Getting Started with Orchestrator and Service Manager
Getting Started with Orchestrator and Service ManagerGetting Started with Orchestrator and Service Manager
Getting Started with Orchestrator and Service ManagerAlexandre Verkinderen
 
10 ways to trigger runbooks from Orchestrator
10 ways to trigger runbooks from Orchestrator10 ways to trigger runbooks from Orchestrator
10 ways to trigger runbooks from OrchestratorFredrik Knalstad
 
Workflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationWorkflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationFlexera
 
VMware Private Clouds: Charting a path to success
VMware Private Clouds: Charting a path to successVMware Private Clouds: Charting a path to success
VMware Private Clouds: Charting a path to successPlatform9
 
Micro services, reactive manifesto and 12-factors
Micro services, reactive manifesto and 12-factorsMicro services, reactive manifesto and 12-factors
Micro services, reactive manifesto and 12-factorsDejan Glozic
 
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbai
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbaiSiebel training-course-navi-mumbai-siebel-course-provider-navi-mumbai
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbaiVibrantGroup
 
Scaling up to 30 m users
Scaling up to 30 m usersScaling up to 30 m users
Scaling up to 30 m usersYoav Avrahami
 
How to deliver secure,highly available Microsoft applications
How to deliver secure,highly available Microsoft applicationsHow to deliver secure,highly available Microsoft applications
How to deliver secure,highly available Microsoft applicationsKemp
 
Continuous Delivery of the Cloud Foundry Platform (as a service!)
Continuous Delivery of the Cloud Foundry Platform (as a service!)Continuous Delivery of the Cloud Foundry Platform (as a service!)
Continuous Delivery of the Cloud Foundry Platform (as a service!)VMware Tanzu
 
Dot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentalsDot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentalsLalit Kale
 

La actualidad más candente (20)

ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
 
OSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the EnterpriseOSH01 - Developing SharePoint Framework Solutions for the Enterprise
OSH01 - Developing SharePoint Framework Solutions for the Enterprise
 
Ordina SOFTC Presentation - Desktop Virtualization
Ordina SOFTC Presentation - Desktop VirtualizationOrdina SOFTC Presentation - Desktop Virtualization
Ordina SOFTC Presentation - Desktop Virtualization
 
BizTalk Server Extensibility
BizTalk Server ExtensibilityBizTalk Server Extensibility
BizTalk Server Extensibility
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodology
 
EVOLVE'15 | Enhance | Loyola Baskar | Cisco - Multi-tenancy AEM Architectur...
EVOLVE'15 |  Enhance | Loyola Baskar | Cisco -  Multi-tenancy AEM Architectur...EVOLVE'15 |  Enhance | Loyola Baskar | Cisco -  Multi-tenancy AEM Architectur...
EVOLVE'15 | Enhance | Loyola Baskar | Cisco - Multi-tenancy AEM Architectur...
 
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
 
Getting Started with Orchestrator and Service Manager
Getting Started with Orchestrator and Service ManagerGetting Started with Orchestrator and Service Manager
Getting Started with Orchestrator and Service Manager
 
SCORCH: Tying it All Together
SCORCH: Tying it All TogetherSCORCH: Tying it All Together
SCORCH: Tying it All Together
 
10 ways to trigger runbooks from Orchestrator
10 ways to trigger runbooks from Orchestrator10 ways to trigger runbooks from Orchestrator
10 ways to trigger runbooks from Orchestrator
 
EVOLVE'14 | Enhance | Anshul Chhabra & Akhil Aggrawal | Cisco - AEM High Avai...
EVOLVE'14 | Enhance | Anshul Chhabra & Akhil Aggrawal | Cisco - AEM High Avai...EVOLVE'14 | Enhance | Anshul Chhabra & Akhil Aggrawal | Cisco - AEM High Avai...
EVOLVE'14 | Enhance | Anshul Chhabra & Akhil Aggrawal | Cisco - AEM High Avai...
 
Workflow Manager for Software License Optimization
Workflow Manager for Software License OptimizationWorkflow Manager for Software License Optimization
Workflow Manager for Software License Optimization
 
VMware Private Clouds: Charting a path to success
VMware Private Clouds: Charting a path to successVMware Private Clouds: Charting a path to success
VMware Private Clouds: Charting a path to success
 
Micro services, reactive manifesto and 12-factors
Micro services, reactive manifesto and 12-factorsMicro services, reactive manifesto and 12-factors
Micro services, reactive manifesto and 12-factors
 
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbai
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbaiSiebel training-course-navi-mumbai-siebel-course-provider-navi-mumbai
Siebel training-course-navi-mumbai-siebel-course-provider-navi-mumbai
 
Scaling up to 30 m users
Scaling up to 30 m usersScaling up to 30 m users
Scaling up to 30 m users
 
How to deliver secure,highly available Microsoft applications
How to deliver secure,highly available Microsoft applicationsHow to deliver secure,highly available Microsoft applications
How to deliver secure,highly available Microsoft applications
 
Continuous Delivery of the Cloud Foundry Platform (as a service!)
Continuous Delivery of the Cloud Foundry Platform (as a service!)Continuous Delivery of the Cloud Foundry Platform (as a service!)
Continuous Delivery of the Cloud Foundry Platform (as a service!)
 
Mulesoft cloudhub
Mulesoft cloudhubMulesoft cloudhub
Mulesoft cloudhub
 
Dot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentalsDot net platform and dotnet core fundamentals
Dot net platform and dotnet core fundamentals
 

Destacado

Scale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricScale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricWim Van den Broeck
 
How to think like a startup
How to think like a startupHow to think like a startup
How to think like a startupLoic Le Meur
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakShelly Sanchez Terrell
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 

Destacado (6)

Scale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabricScale Your Data Tier with Windows Server AppFabric
Scale Your Data Tier with Windows Server AppFabric
 
Inaugural Addresses
Inaugural AddressesInaugural Addresses
Inaugural Addresses
 
How to think like a startup
How to think like a startupHow to think like a startup
How to think like a startup
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 

Similar a Scaling Out .Net

DotnetConf - Cloud native and .Net5 announcements
DotnetConf - Cloud native and .Net5 announcementsDotnetConf - Cloud native and .Net5 announcements
DotnetConf - Cloud native and .Net5 announcementsSajeetharan
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Jack-Junjie Cai
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsMichael Elder
 
IIS Always-On Services
IIS Always-On ServicesIIS Always-On Services
IIS Always-On ServicesBrian Ritchie
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceDavid Currie
 
Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Alexander Feschenko
 
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...Codit
 
Azure App Service
Azure App ServiceAzure App Service
Azure App ServiceBizTalk360
 
管理向云的迁移过程
管理向云的迁移过程管理向云的迁移过程
管理向云的迁移过程ITband
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
London .NET Developers Azure Websites
London .NET Developers Azure WebsitesLondon .NET Developers Azure Websites
London .NET Developers Azure WebsitesTom Walker
 
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...Codit
 
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...UA Mobile
 
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...VMworld
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01Niit Care
 
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenariosRicardo González
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...VMware Tanzu
 

Similar a Scaling Out .Net (20)

Scaling Out .NET
Scaling Out .NETScaling Out .NET
Scaling Out .NET
 
Docker12 factor
Docker12 factorDocker12 factor
Docker12 factor
 
DotnetConf - Cloud native and .Net5 announcements
DotnetConf - Cloud native and .Net5 announcementsDotnetConf - Cloud native and .Net5 announcements
DotnetConf - Cloud native and .Net5 announcements
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
 
IIS Always-On Services
IIS Always-On ServicesIIS Always-On Services
IIS Always-On Services
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
 
Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.
 
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
Cloud integration: what's in it for you? (Toon Vanhoutte & Massimo Crippa at ...
 
Azure App Service
Azure App ServiceAzure App Service
Azure App Service
 
管理向云的迁移过程
管理向云的迁移过程管理向云的迁移过程
管理向云的迁移过程
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
London .NET Developers Azure Websites
London .NET Developers Azure WebsitesLondon .NET Developers Azure Websites
London .NET Developers Azure Websites
 
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
Het Microsoft Integratie Platform – Welk model past u het beste? (Steef Jan W...
 
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...
Azure App Services для создания бэкенда мобильных приложений. Parse Open Sour...
 
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...
VMworld 2013: Keep it Simple and Integrated - Out-of the Box Cross-System Aut...
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01
 
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios
20170209 dev day-websites_vs_cloudservices_vsservicefabric_scenarios
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
 
From Monolith to Microservices
From Monolith to MicroservicesFrom Monolith to Microservices
From Monolith to Microservices
 

Último

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Último (20)

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

Scaling Out .Net

  • 1. Brian Ritchie Chief Architect Payformance Corporation Email: brian.ritchie@gmail.com Blog: http://weblog.asp.net/britchie Web: http://www.dotnetpowered.com Scale Out your .NET applications by leveraging IIS7, AppFabric, Web Farm Framework, and Web Deploy
  • 2. Brian Ritchie » Chief Architect at Payformance Corporation » Nearly 20 years of development experience » Developing on .NET since 1.0 Beta 1 » Contributed to Mono and other open source projects
  • 3. » Increases Reliability » Increases Performance » Provides Elastic Scalability
  • 4.
  • 5. » Design Considerations » Management Complexities » Maintenance Challenges
  • 6. » Load Balancing ˃Network Load Balancing ˃Queued Processing ˃Workflow Distribution » Distributed Caching
  • 7. » Use load balancing to spread work across multiple machines ˃Building out instead of building up uses lower cost resources ˃Elastic scaling for extra capacity ˃Prevent single point of failure
  • 8. » Network Load Balancing ˃ NLB: Network Load Balancer ˃ ARR: Application Request Routing ˃ F5 BigIP Local Traffic Manager
  • 9. » Workflow Distribution ˃ Windows Server AppFabric
  • 10. » Queued Processing ˃ Pick a queue: MSMQ, SQL Service Broker, SQL Table, etc. ˃ Process it with a multi-threaded Always-On Services Queue Workers Enqueue
  • 11. 0 10 20 30 40 50 60 70 80 90 100 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Normal Queued
  • 12. » Using caching to decrease load on centralized database resources » Load balanced web servers required shared session
  • 13. » A Distributed Cache has these benefits: ˃In-Memory for Performance ˃Replicated for Reliability ˃ASP.NET providers for easy integration ˃Doesn’t add a single point of failure » Options ˃Windows Server AppFabric Cache (“Velocity”) ˃MemCached
  • 14. » A scaled out infrastructure presents its own set of challenges: ˃How do I provision resources easily? ˃Do I need to manage each machine individually? ˃How do I deploy application updates? ˃How do I automate the manual tasks?
  • 15.
  • 16. » IIS7+AppFabric: Application Platform ˃ Unified application platform: web sites, web services, always-on services ˃ Move your Windows Services to IIS7 with AppFabric to improve management & deployment
  • 17. » Web Deploy 2.1 ˃Combines all build resources into one package and makes deploying applications to the host server easy ˃Components • Command-line tools • Server-side service • MSBuild packaging support • Visual Studio configuration integration
  • 18. » Web Deploy 2.1 Build/Deploy Server Deploy IIS Server IIS MMC – Import Application Package Build Server (using MSBuild) Deployment Package IIS MMC – Export Application
  • 19. » Web Farm Framework 2.0 ˃Centralized farm management ˃Easily provision resources ˃Distribute updates across the farm ˃Ease maintenance with rolling upgrades & automatic load balancer control ˃Extensible: Plug-ins for managing 3rd party load balancers
  • 20. » Web Farm Framework 2.0 control Primary control synchronize deploy
  • 21. » Windows Server AppFabric Dashboard
  • 22. Hardware load balancer BigIP F5 Web Farm • ASP.NET Web Application • IIS7 • Web Farm Framework 2.0 • Windows Server AppFabric • ASP.NET AppFabric Session Provider • Web Deploy Cache Cluster • AppFabric Cache Service Deployer • Web Deploy
  • 23. » System Center Operations Manager with Windows Server AppFabric Management Pack ˃ AppFabric Event Collection service ˃ AppFabric Workflow Management service ˃ AppFabric Caching Service ˃ AppFabric SQL monitoring databases ˃ AppFabric SQL Workflow Instance Stores ˃ AppFabric database connections ˃ IIS Hosted WCF and WF services
  • 24. » Automate using: » Automation tools cover: • AppFabric • IIS7 • Web Farm Farmwork Powershell API
  • 25.
  • 26. » Web Farm Framework ˃ Web Farm Framework http://www.iis.net/download/WebFarmFramework ˃ Scott Gu’s Introduce to WFF 2.0 http://weblogs.asp.net/scottgu/archive/2010/09/08/introducing-the-microsoft-web-farm-framework.aspx ˃ WFF Documentation (including API & Powershell) http://learn.iis.net/page.aspx/905/microsoft-web-farm-framework-20-for-iis-7/ » Windows AppFabric ˃ AppFabric Architecture Guide http://blogs.msdn.com/b/yasserabdelkader/archive/2010/09/12/release-of-windows-server-appfabric-architecture-guide.aspx ˃ AppFabric Management Pack for Op Mgr 2007 http://blogs.technet.com/b/appfabric/archive/2010/06/14/appfabric-management-pack-available-for-operations-manager- 2007.aspx ˃ AppFabric Presentation http://rstonkus.wordpress.com/2010/10/28/partner-conference-windows-server-appfabric/ » Other ˃ Memcached ASP.NET Providers http://memcachedproviders.codeplex.com/ ˃ SQL Table Queues http://www.mssqltips.com/tip.asp?tip=1257 ˃ Azure Scalability using Queues http://www.cloudbook.net/resources/stories/-azure-scalability--use-queues-as-your-bridges ˃ Web Deploy Team Blog http://blogs.iis.net/msdeploy/default.aspx ˃ Application Request Routing http://www.iis.net/download/ApplicationRequestRouting http://learn.iis.net/page.aspx/486/http-load-balancing-using-application-request-routing/ http://blogs.iis.net/mailant/archive/2010/03/25/how-iis-application-request-routing-arr-powers-elastic-scale-for- maximumasp.aspx