SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
Serving 10 million
                     requests per day

               How to solve the architecture challenges
                  of a high traffic ASP.NET website

                              Level 400


           Dan Fizesan, Lead Developer,
        NetMatch – Travel Technology Solutions

@   itcampro     # itcamp12   Premium conference on Microsoft technologies
ITCamp 2012 sponsors                                                       Private &
                                                                           Public Cloud




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Who am I                                                                   Private &
                                                                           Public Cloud


• Dan Fizesan, 37 years old.

• 15 year experience with Progress / C# / ASP.NET / T-SQL.

• Technical Architect / Lead developer in NetMatch / Zoover
  project.

• NetMatch international company e-business provider for
  tourism industry

• Zoover is a website with reviews about trips on average
  500.000 unique visitors per day

• Contact: d.fizesan@netmatch.ro


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Agenda                                                                     Private &
                                                                           Public Cloud




• Architecture of a web application

• Deep dive into the macro architecture

• Serving 10 million requests a day - final view

• Demo

• Q&A


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Context                                                                    Private &
                                                                           Public Cloud



• More and more users are using the online
  websites
• Applications on mobile devices are using
  data from the web data services
• The FOCUS in the presentation are on-
  premise applications that are also subject to
  above trends


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &
                                                                           Public Cloud




• Be online as much time as possible

• Serve as many users as possible

• Low cost of ownership

• Good performance



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &
                                                                           Public Cloud




• Be online as much time as possible

• Serve as many users as possible

• Low cost of ownership

• Good performance



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Availability                                                               Private &
                                                                           Public Cloud




• We reach high availability when more than 90% of
  the time the website is working correctly

• 99% availability = the website is down 87,6 hours in
  a year (or 15 minutes every day)

• 99.99% availability = the system is down less then 1
  hour per year

• Our systems go for 99.9% availability


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &
                                                                           Public Cloud




How can we reach 99.9% availability?

     • Through passive redundancy – failover

     • Through active redundancy

     • Through data sources replication


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Load Balancers + Failover                                                  Private &
                                                                           Public Cloud


• Hardware load balancers

• Software load balancers: Network Load
  Balancer, Ha Proxy, etc.

• Algorithms to spread the load

• Implementing failover is crucial

• Alternative: Producer-consumer pattern –
  used in IIS

@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &
                                                                           Public Cloud


Web is stateless, what happens with the state
when using a web farm?


No sessions stickiness:                 With session stickiness
    • SQL (session) state                     • performs worse
      server,                                 • can lead to
    • distributed cache                         overloaded servers
      session state,
    • use cookies


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &
                                                                           Public Cloud



• Be online as much time as possible

• How can we serve as many users as
  possible?
     Partly through using load balancers
     Partly through scalability of the website

• Low cost of ownership
• Good performance


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Scalability                                                                Private &
                                                                           Public Cloud



• The ability of the website to grow the user
  base by adding more hardware
• The more linear the relation is, the more
  scalable the website is
• Vertical scalability

• Horizontal scalability, lower costs using
  commodity hardware


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &
                                                                           Public Cloud



• Be online as much time as possible

• How can we serve as many users as possible?
     Partly through using load balancers
     Partly through scalability of the website

• Low cost of ownership

• Good performance


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Distributed Caching                                                        Private &
                                                                           Public Cloud



• Helps the backend (database/services)

• Advantage: brings consistency in an webfarm

• Disadvantages: latency
• Some of the free options:
     Windows Server AppFabric Caching, memcached

• Some of the commercial options:
     NCache, Azure AppFabric caching

@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &
                                                                           Public Cloud




How can we protect the website in the case
the distributed cache goes down or is not
reachable?

• Through implementing failover caching
  mechanisms in the website




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &
                                                                           Public Cloud



• Be online as much time as possible
      Through high availability

• Serve as many users as possible
     Partly through using load balancers
     Partly through scalability of the website

• Low cost of ownership
• Good performance


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Perceived good performance                                                 Private &
                                                                           Public Cloud



• Web code/ business layer performance

• Database queries performance
     Flat databases
     Replicated databases

• Distributed architecture
     splitting into sub-applications

• Parallelization of the code (demo)

@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &
                                                                           Public Cloud




How can we use distributed architecture and
have a good performance?

• We should externalize the resource-intensive
  parts of the application into sub-applications

• Choosing wrong parts will only add (network)
  latency

@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
OUR ARCHITECTURE TO SERVE
       10 MILLION REQUESTS PER DAY




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Demo Results                                                                       Private &
                                                                                   Public Cloud



                               300 requests
                 Approach                                       %                       s
                                                                                     21,6 s
          ThreadPool parallelism                             1200%


      Task Parallel Library parallelism                      4200%                    76 s



        Simple Threads parallelism                            155%                    2,8 s



      Custom ThreadPool parallelism                           100%                    1,8 s




@   itcampro     # itcamp12         Premium conference on Microsoft technologies
Contact: d.fizesan@netmatch.ro
     www.netmatch.ro/itcamp2012/challenges.pptx
     www.netmatch.ro/itcamp2012/demo.zip


     Q&A


@   itcampro   # itcamp12    Premium conference on Microsoft technologies
To Remember                                                                Private &
                                                                           Public Cloud



• Availability

• Redundancy

• Load balancer

• Scalability

• Distributed caching

• Performance

@   itcampro   # itcamp12   Premium conference on Microsoft technologies

Contenu connexe

Tendances

IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...
IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...
IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...Romeo Kienzler
 
Kaavo MSP Introduction 08182011
Kaavo MSP Introduction 08182011Kaavo MSP Introduction 08182011
Kaavo MSP Introduction 08182011sams2618
 
Kaavo Introduction 08012011
Kaavo Introduction 08012011Kaavo Introduction 08012011
Kaavo Introduction 08012011sams2618
 
Cloud adoption patterns
Cloud adoption patternsCloud adoption patterns
Cloud adoption patternsKyle Brown
 
Info Sec 2010 Possibilities And Security Challenges Of Cloud Computing (Han...
Info Sec 2010   Possibilities And Security Challenges Of Cloud Computing (Han...Info Sec 2010   Possibilities And Security Challenges Of Cloud Computing (Han...
Info Sec 2010 Possibilities And Security Challenges Of Cloud Computing (Han...ptaglephd
 
Citrix Synergy Barcelona 2012 Keynote
Citrix Synergy Barcelona 2012 KeynoteCitrix Synergy Barcelona 2012 Keynote
Citrix Synergy Barcelona 2012 KeynoteCitrix
 
Planning Cloud Migrations: It's all about the destination
Planning Cloud Migrations: It's all about the destinationPlanning Cloud Migrations: It's all about the destination
Planning Cloud Migrations: It's all about the destinationArvind Viswanathan
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateMichael Elder
 
Cognitive Computing on the Cloud - Watson services for bluemix
Cognitive Computing on the Cloud - Watson services for bluemixCognitive Computing on the Cloud - Watson services for bluemix
Cognitive Computing on the Cloud - Watson services for bluemixSam Garforth
 
Population Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself TechnologyPopulation Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself TechnologyTokyo University of Science
 
ITque Cloud Intro Webinar Slides - Feb 2013
ITque Cloud Intro Webinar Slides - Feb 2013ITque Cloud Intro Webinar Slides - Feb 2013
ITque Cloud Intro Webinar Slides - Feb 2013ITque, Inc.
 
Cloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesCloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesRyan Koop
 
IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3Nguyen Tai Dzung
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computingTrendProgContest13
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) Animesh Singh
 
2012 open storage summit keynote
2012 open storage summit   keynote2012 open storage summit   keynote
2012 open storage summit keynoteRandy Bias
 

Tendances (20)

Cloud computing
Cloud computingCloud computing
Cloud computing
 
IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...
IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...
IBM Codename: Bluemix - Cloudfoundry, PaaS development and deployment trainin...
 
Kaavo MSP Introduction 08182011
Kaavo MSP Introduction 08182011Kaavo MSP Introduction 08182011
Kaavo MSP Introduction 08182011
 
Kaavo Introduction 08012011
Kaavo Introduction 08012011Kaavo Introduction 08012011
Kaavo Introduction 08012011
 
Cloud adoption patterns
Cloud adoption patternsCloud adoption patterns
Cloud adoption patterns
 
Info Sec 2010 Possibilities And Security Challenges Of Cloud Computing (Han...
Info Sec 2010   Possibilities And Security Challenges Of Cloud Computing (Han...Info Sec 2010   Possibilities And Security Challenges Of Cloud Computing (Han...
Info Sec 2010 Possibilities And Security Challenges Of Cloud Computing (Han...
 
Citrix Synergy Barcelona 2012 Keynote
Citrix Synergy Barcelona 2012 KeynoteCitrix Synergy Barcelona 2012 Keynote
Citrix Synergy Barcelona 2012 Keynote
 
Planning Cloud Migrations: It's all about the destination
Planning Cloud Migrations: It's all about the destinationPlanning Cloud Migrations: It's all about the destination
Planning Cloud Migrations: It's all about the destination
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
 
Cognitive Computing on the Cloud - Watson services for bluemix
Cognitive Computing on the Cloud - Watson services for bluemixCognitive Computing on the Cloud - Watson services for bluemix
Cognitive Computing on the Cloud - Watson services for bluemix
 
Population Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself TechnologyPopulation Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself Technology
 
ITque Cloud Intro Webinar Slides - Feb 2013
ITque Cloud Intro Webinar Slides - Feb 2013ITque Cloud Intro Webinar Slides - Feb 2013
ITque Cloud Intro Webinar Slides - Feb 2013
 
Cloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 SlidesCloud Camp Chicago Dec 2012 Slides
Cloud Camp Chicago Dec 2012 Slides
 
Lets Do the Cloud-CFO Summit 2013
Lets Do the Cloud-CFO Summit 2013Lets Do the Cloud-CFO Summit 2013
Lets Do the Cloud-CFO Summit 2013
 
Cc
CcCc
Cc
 
IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3
 
Introduction to cloud computing
Introduction to cloud computingIntroduction to cloud computing
Introduction to cloud computing
 
IBM Cloud Journey v10
IBM Cloud Journey v10IBM Cloud Journey v10
IBM Cloud Journey v10
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
 
2012 open storage summit keynote
2012 open storage summit   keynote2012 open storage summit   keynote
2012 open storage summit keynote
 

Similaire à ITCamp 2012 - Dan Fizesan - Serving 10 million requests per day

ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp
 
Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)ITCamp
 
How to Tackle the Single Sign-On Challenge in 2012
How to Tackle the Single Sign-On Challenge in 2012How to Tackle the Single Sign-On Challenge in 2012
How to Tackle the Single Sign-On Challenge in 2012Mihai Dan Nadas
 
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challenge
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challengeITCamp 2012 - Mihai Nadas - Tackling the single sign-on challenge
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challengeITCamp
 
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)ITCamp
 
How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)ITCamp
 
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid CloudsDoes Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid CloudsBluelock
 
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitchITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitchITCamp
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud ComputingDr Ganesh Iyer
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Enea Gabriel
 
Agora2013 Yugo Neumorni
Agora2013 Yugo NeumorniAgora2013 Yugo Neumorni
Agora2013 Yugo NeumorniAgora Group
 
ITCamp 2011 - Mihai Nadas - Windows Azure interop
ITCamp 2011 - Mihai Nadas - Windows Azure interopITCamp 2011 - Mihai Nadas - Windows Azure interop
ITCamp 2011 - Mihai Nadas - Windows Azure interopITCamp
 
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012ITCamp
 
Eo navigating the cloud
Eo navigating the cloudEo navigating the cloud
Eo navigating the cloudeophiladelphia
 
Eo navigating the cloud v8
Eo navigating the cloud v8Eo navigating the cloud v8
Eo navigating the cloud v8Nerve2012
 
Cloud computing
Cloud computingCloud computing
Cloud computingAmit Kumar
 
Running your CMS in the Cloud
Running your CMS in the CloudRunning your CMS in the Cloud
Running your CMS in the CloudThomas Robbins
 

Similaire à ITCamp 2012 - Dan Fizesan - Serving 10 million requests per day (20)

ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
 
Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)Patterns for Scalability in Windows Azure Applications (Alex Mang)
Patterns for Scalability in Windows Azure Applications (Alex Mang)
 
How to Tackle the Single Sign-On Challenge in 2012
How to Tackle the Single Sign-On Challenge in 2012How to Tackle the Single Sign-On Challenge in 2012
How to Tackle the Single Sign-On Challenge in 2012
 
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challenge
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challengeITCamp 2012 - Mihai Nadas - Tackling the single sign-on challenge
ITCamp 2012 - Mihai Nadas - Tackling the single sign-on challenge
 
The Sun Cloud
The Sun CloudThe Sun Cloud
The Sun Cloud
 
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
Database and Public EndPoints Redundancy on Azure (Radu Vunvulea)
 
How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)How # (sharp) is Your Katana (Ciprian Jichici)
How # (sharp) is Your Katana (Ciprian Jichici)
 
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid CloudsDoes Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
 
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitchITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
ITCamp 2013 - Melania Danciu - HTML5 apps with LightSwitch
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud Computing
 
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
Elements of DDD with ASP.NET MVC & Entity Framework Code First v2
 
Agora2013 Yugo Neumorni
Agora2013 Yugo NeumorniAgora2013 Yugo Neumorni
Agora2013 Yugo Neumorni
 
ITCamp 2011 - Mihai Nadas - Windows Azure interop
ITCamp 2011 - Mihai Nadas - Windows Azure interopITCamp 2011 - Mihai Nadas - Windows Azure interop
ITCamp 2011 - Mihai Nadas - Windows Azure interop
 
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012
ITCamp 2011 - Adrian Stoian - System Center Configuration Manager 2012
 
Application of Cloud Computing
Application of Cloud ComputingApplication of Cloud Computing
Application of Cloud Computing
 
Eo navigating the cloud
Eo navigating the cloudEo navigating the cloud
Eo navigating the cloud
 
Eo navigating the cloud v8
Eo navigating the cloud v8Eo navigating the cloud v8
Eo navigating the cloud v8
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Running your CMS in the Cloud
Running your CMS in the CloudRunning your CMS in the Cloud
Running your CMS in the Cloud
 

Plus de ITCamp

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...ITCamp
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...ITCamp
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp
 
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...ITCamp
 

Plus de ITCamp (20)

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing Skills
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AI
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian Quality
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
 
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
ITCamp 2018 - Mete Atamel Ian Talarico - Google Home meets .NET containers on...
 

Dernier

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
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
 
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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
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
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Dernier (20)

E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
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
 
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!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
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
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

ITCamp 2012 - Dan Fizesan - Serving 10 million requests per day

  • 1. Serving 10 million requests per day How to solve the architecture challenges of a high traffic ASP.NET website Level 400 Dan Fizesan, Lead Developer, NetMatch – Travel Technology Solutions @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 2. ITCamp 2012 sponsors Private & Public Cloud @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 3. Who am I Private & Public Cloud • Dan Fizesan, 37 years old. • 15 year experience with Progress / C# / ASP.NET / T-SQL. • Technical Architect / Lead developer in NetMatch / Zoover project. • NetMatch international company e-business provider for tourism industry • Zoover is a website with reviews about trips on average 500.000 unique visitors per day • Contact: d.fizesan@netmatch.ro @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 4. Agenda Private & Public Cloud • Architecture of a web application • Deep dive into the macro architecture • Serving 10 million requests a day - final view • Demo • Q&A @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 5. Context Private & Public Cloud • More and more users are using the online websites • Applications on mobile devices are using data from the web data services • The FOCUS in the presentation are on- premise applications that are also subject to above trends @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 6. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 7. Architectural Goals Private & Public Cloud • Be online as much time as possible • Serve as many users as possible • Low cost of ownership • Good performance @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 8. Architectural Goals Private & Public Cloud • Be online as much time as possible • Serve as many users as possible • Low cost of ownership • Good performance @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 9. Availability Private & Public Cloud • We reach high availability when more than 90% of the time the website is working correctly • 99% availability = the website is down 87,6 hours in a year (or 15 minutes every day) • 99.99% availability = the system is down less then 1 hour per year • Our systems go for 99.9% availability @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 10. Challenge Private & Public Cloud How can we reach 99.9% availability? • Through passive redundancy – failover • Through active redundancy • Through data sources replication @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 11. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 12. Load Balancers + Failover Private & Public Cloud • Hardware load balancers • Software load balancers: Network Load Balancer, Ha Proxy, etc. • Algorithms to spread the load • Implementing failover is crucial • Alternative: Producer-consumer pattern – used in IIS @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 13. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 14. Challenge Private & Public Cloud Web is stateless, what happens with the state when using a web farm? No sessions stickiness: With session stickiness • SQL (session) state • performs worse server, • can lead to • distributed cache overloaded servers session state, • use cookies @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 15. Architectural Goals Private & Public Cloud • Be online as much time as possible • How can we serve as many users as possible? Partly through using load balancers Partly through scalability of the website • Low cost of ownership • Good performance @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 16. Scalability Private & Public Cloud • The ability of the website to grow the user base by adding more hardware • The more linear the relation is, the more scalable the website is • Vertical scalability • Horizontal scalability, lower costs using commodity hardware @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 17. Architectural Goals Private & Public Cloud • Be online as much time as possible • How can we serve as many users as possible? Partly through using load balancers Partly through scalability of the website • Low cost of ownership • Good performance @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 18. Distributed Caching Private & Public Cloud • Helps the backend (database/services) • Advantage: brings consistency in an webfarm • Disadvantages: latency • Some of the free options: Windows Server AppFabric Caching, memcached • Some of the commercial options: NCache, Azure AppFabric caching @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 19. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 20. Challenge Private & Public Cloud How can we protect the website in the case the distributed cache goes down or is not reachable? • Through implementing failover caching mechanisms in the website @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 21. Architectural Goals Private & Public Cloud • Be online as much time as possible  Through high availability • Serve as many users as possible Partly through using load balancers Partly through scalability of the website • Low cost of ownership • Good performance @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 22. Perceived good performance Private & Public Cloud • Web code/ business layer performance • Database queries performance Flat databases Replicated databases • Distributed architecture splitting into sub-applications • Parallelization of the code (demo) @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 23. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 24. Challenge Private & Public Cloud How can we use distributed architecture and have a good performance? • We should externalize the resource-intensive parts of the application into sub-applications • Choosing wrong parts will only add (network) latency @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 25. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 26. OUR ARCHITECTURE TO SERVE 10 MILLION REQUESTS PER DAY @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 27. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 28. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 29. Demo Results Private & Public Cloud 300 requests Approach % s 21,6 s ThreadPool parallelism 1200% Task Parallel Library parallelism 4200% 76 s Simple Threads parallelism 155% 2,8 s Custom ThreadPool parallelism 100% 1,8 s @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 30. Contact: d.fizesan@netmatch.ro www.netmatch.ro/itcamp2012/challenges.pptx www.netmatch.ro/itcamp2012/demo.zip Q&A @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 31. To Remember Private & Public Cloud • Availability • Redundancy • Load balancer • Scalability • Distributed caching • Performance @ itcampro # itcamp12 Premium conference on Microsoft technologies