Saturday, December 02, 2017

Stack overflow is built using ASP.NET, C#, SQL Server, Windows, IIS...

Irrespective of what technology we work with how many times have we landed on Stack Overflow / Stack Exchange website on a daily basis? If we ask this to any developer the answer would mostly be MANY times in a day :)

Site was launched in 2008 and is built using Windows, SQL Server, IIS, and ASP.NET along with HAProxy, Redis, and ElasticSearch, all served via Fastly CDN.

Fun Facts:

  • 1.3 Billion page views per month
  • They transfer ~55 TB data per month
  • 4 SQL Servers (organized as 2 clusters)
  • Stack Overflow serves 528 Million queries per day (Peak 11000 queries per second)
  • Stack Exchange, Careers, meta serves 496 million queries per day (Peak 12800 queries per second)
  • Over 360 databases with the same schema, which changes frequently
  • They made use of Microsoft Bizspark program before getting graduated
  • All their production traffic is served using physical servers & 
  • Cloud services are being used only for storing encrypted offsite backups (Glacier) and for DNS (Route53)

Programming stack used:

  • C# + ASP.NET MVC, 
  • Dapper ORM, 
  • StackExchange.Redis, 
  • DotNetOpenAuth, 
  • MiniProfiler, 
  • Jil

Deployment on a typical day:

  • 25 times per day code deployment to the development server (just Stack overflow Q&A alone)
  • 5 to 10 times a day production deployment happens!

Page rendering time:

  • Homepage renders @ 12.2 millisecond
  • Questions page renders @ 18.3 milliseconds

Source: &

No comments: