0
Serving 10 million                     requests per day               How to solve the architecture challenges            ...
ITCamp 2012 sponsors                                                       Private &                                      ...
Who am I                                                                   Private &                                      ...
Agenda                                                                     Private &                                      ...
Context                                                                    Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Architectural Goals                                                        Private &                                      ...
Architectural Goals                                                        Private &                                      ...
Availability                                                               Private &                                      ...
Challenge                                                                  Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Load Balancers + Failover                                                  Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &                                      ...
Architectural Goals                                                        Private &                                      ...
Scalability                                                                Private &                                      ...
Architectural Goals                                                        Private &                                      ...
Distributed Caching                                                        Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &                                      ...
Architectural Goals                                                        Private &                                      ...
Perceived good performance                                                 Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Challenge                                                                  Private &                                      ...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
OUR ARCHITECTURE TO SERVE       10 MILLION REQUESTS PER DAY@   itcampro   # itcamp12   Premium conference on Microsoft tec...
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Demo Results                                                                       Private &                              ...
Contact: d.fizesan@netmatch.ro     www.netmatch.ro/itcamp2012/challenges.pptx     www.netmatch.ro/itcamp2012/demo.zip     ...
To Remember                                                                Private &                                      ...
Upcoming SlideShare
Loading in...5
×

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

283

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
283
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "ITCamp 2012 - Dan Fizesan - Serving 10 million requests per day"

  1. 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. 2. ITCamp 2012 sponsors Private & Public Cloud@ itcampro # itcamp12 Premium conference on Microsoft technologies
  3. 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. 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. 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. 6. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  7. 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. 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. 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. 10. Challenge Private & Public CloudHow 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. 11. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  12. 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. 13. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  14. 14. Challenge Private & Public CloudWeb is stateless, what happens with the statewhen 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. 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. 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. 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. 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. 19. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  20. 20. Challenge Private & Public CloudHow can we protect the website in the casethe distributed cache goes down or is notreachable?• Through implementing failover caching mechanisms in the website@ itcampro # itcamp12 Premium conference on Microsoft technologies
  21. 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. 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. 23. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  24. 24. Challenge Private & Public CloudHow can we use distributed architecture andhave 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. 25. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  26. 26. OUR ARCHITECTURE TO SERVE 10 MILLION REQUESTS PER DAY@ itcampro # itcamp12 Premium conference on Microsoft technologies
  27. 27. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  28. 28. @ itcampro # itcamp12 Premium conference on Microsoft technologies
  29. 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. 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. 31. To Remember Private & Public Cloud• Availability• Redundancy• Load balancer• Scalability• Distributed caching• Performance@ itcampro # itcamp12 Premium conference on Microsoft technologies
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×