Presentation is loading. Please wait.

Presentation is loading. Please wait.

itcamp12 # Premium conference on Microsoft technologies Serving 10 million requests per day How to solve the architecture challenges of a high.

Similar presentations


Presentation on theme: "itcamp12 # Premium conference on Microsoft technologies Serving 10 million requests per day How to solve the architecture challenges of a high."— Presentation transcript:

1 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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

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

3 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Who am I

4 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Agenda

5 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Context

6 itcampro @ itcamp12 # Premium conference on Microsoft technologies

7 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud Be online as much time as possible Serve as many users as possible Low cost of ownership Good performance Architectural Goals

8 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud Be online as much time as possible Serve as many users as possible Low cost of ownership Good performance Architectural Goals

9 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Availability

10 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud How can we reach 99.9% availability? Through passive redundancy – failover Through active redundancy Through data sources replication Challenge

11 itcampro @ itcamp12 # Premium conference on Microsoft technologies

12 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Load Balancers + Failover

13 itcampro @ itcamp12 # Premium conference on Microsoft technologies

14 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud Web is stateless, what happens with the state when using a web farm? Challenge No sessions stickiness: SQL (session) state server, distributed cache session state, use cookies With session stickiness performs worse can lead to overloaded servers

15 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Architectural Goals

16 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Scalability

17 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Architectural Goals

18 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Distributed Caching

19 itcampro @ itcamp12 # Premium conference on Microsoft technologies

20 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Challenge

21 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Architectural Goals

22 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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) Perceived good performance

23 itcampro @ itcamp12 # Premium conference on Microsoft technologies

24 itcampro @ itcamp12 # Premium conference on Microsoft technologies 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 Challenge

25 itcampro @ itcamp12 # Premium conference on Microsoft technologies

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

27 itcampro @ itcamp12 # Premium conference on Microsoft technologies

28 itcampro @ itcamp12 # Premium conference on Microsoft technologies

29 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud 300 requests Demo Results Approach%s ThreadPool parallelism1200% 21,6 s Task Parallel Library parallelism4200%76 s Simple Threads parallelism155%2,8 s Custom ThreadPool parallelism100%1,8 s

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

31 itcampro @ itcamp12 # Premium conference on Microsoft technologies Private & Public Cloud Availability Redundancy Load balancer Scalability Distributed caching Performance To Remember


Download ppt "itcamp12 # Premium conference on Microsoft technologies Serving 10 million requests per day How to solve the architecture challenges of a high."

Similar presentations


Ads by Google