Revision 03e0e5f6-d0c9-4ebc-984b-e0f2d46865ee - Meta Stack Exchange
Core
====
Stack Overflow uses a [**WISC**][1] stack <strike>via [BizSpark][2]</strike> (We Graduated!):
- **Operating System** [Microsoft Windows Server 2016 x64][3]
- **Web Server** [IIS 10][4]
- **Database** [SQL Server 2017][5] running [Microsoft Windows Server 2016 x64][6]
- **Language** [C#][7]
Software Development Tools
---------
- **IDE** Visual Studio 2017
- **Framework** [Microsoft ASP.NET][8] (version 5.2.3) on .NET 4.6.2
- **Web Framework** [ASP.NET MVC 5][9] with [MiniProfiler](https://nuget.org/packages/MiniProfiler)
- **View Engine** [Razor 3][10]
- **Browser Framework** [jQuery 1.12.4][11]
- **Data Access Layer** [LINQ to SQL][12] and [Dapper][13]
- **Cache / Additional Data** redis 4.0.7 via [StackExchange.Redis](https://github.com/StackExchange/StackExchange.Redis), with serialization via [protobuf-net](https://nuget.org/packages/protobuf-net)
- **Source Control** [Git][14] using a self-hosted [GitHub Enterprise][15] instance (previously [Mercurial][16] from 2010–2014, [Subversion][17] from 2008–2010)
- **Compare Tool** [Beyond Compare 4][18]
External Bits
-------------
Code used in Stack Overflow that is not included as part of the development tools:
- [reCAPTCHA][19]
- [DotNetOpenAuth](http://www.dotnetopenauth.net/)
- [WMD][20] - Now developed as open source in the project *[PageDown][21]*
- [Prettify][22]
- [Google Analytics][23]
- [TeamCity](https://www.jetbrains.com/teamcity/)
- [HAProxy][24]
- [MarkdownSharp][26]
- [LESS](http://lesscss.org/) ([source](https://meta.stackexchange.com/a/186406/152859))
- [MathJax][28]
- [Elasticsearch](https://www.elastic.co//) ([source](https://meta.stackexchange.com/questions/160100/a-new-search-engine-for-stack-exchange))
Miscellaneous
-------------
- [WordPress on Linux][29] (Site Blogs) [Jekyll (on linux?)][30] (for [blog.stackexchange.com][31])
- [WebSocket][32] (for [real time updates][33]; [custom C# implementation][34])
- [Bandwidth used by Stack Exchange sites](https://meta.stackexchange.com/a/172340/152859)
- [jQuery Isotope](https://isotope.metafizzy.co/) plugin (for the [grid-style site list](https://stackexchange.com/sites?view=grid)) <sup><sub>([Source](https://meta.stackexchange.com/a/124086/))</sub></sup>
Content
-------
- **License** [Creative Commons Attribution-Share Alike 4.0][35]
- **Standards** [OpenSearch][36], [Atom][37]
- **Host** two datacenters:
- New York: [QTS][qts] (technically in Jersey City, NJ now). Formerly hosted at [Internap][inap] and [PEER 1][p1].
- Denver: [FORTRUST](https://www.fortrustdatacenter.com/)
Hardware
--------
<!-- I used HTML markup on purpose... markdown didn't space the sections properly. -->
<ul>
<li>11 Dell R630 IIS web servers (9 shared for all production like SO, two for Meta and development):
<ul>
<li>2x Intel Xeon Processor E5-2690 v3 @ 2.6 GHz 12 Core with 24 threads</li>
<li>64 GB RAM</li>
<li>Windows Server 2012 R2</li>
<li>Two drives
<ul>
<li>2 Intel 320 300GB SSD (RAID 1)</li>
</ul>
</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>Three Dell R720xd database servers (two in New York City, one in Denver, using SQL AlwaysOn Clustering) (Global "Sites" DB & Stack Overflow dedicated):
<ul>
<li>2x Intel Xeon Processor E5-2680 @ 2.7 GHz</li>
<li>384 GB RAM</li>
<li>21 drives
<ul>
<li>Mirrored Pair for OS</li>
<li>2 Intel P3700 2TB PCIe NVMe RAID1 for databases</li>
<li>24 Intel 710 200GB SSD RAID10 for databases</li>
</ul>
</li>
<li>SQL Server 2014 SP1</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>Three Dell R730 database servers (two in New York City, one in Denver, using SQL AlwaysOn Clustering) (All other sites, Careers, Area 51, etc.):
<ul>
<li>2x Intel Xeon Processor X5680 @ 3.33 GHz</li>
<li>768 GB RAM</li>
<li>28 drives
<ul>
<li>Mirrored Pair for OS</li>
<li>2 Intel P3700 2TB PCIe NVMe RAID0 for databases</li>
<li>24 1.2TB 10K RAID10 for large databases</li>
</ul>
</li>
<li>SQL Server 2014 SP1</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>Two Dell R620 HAProxy servers (direct):
<ul>
<li>2x Intel Xeon Processor E5-2650 @ 2.0 GHz</li>
<li>64 GB RAM</li>
<li>CentOS 7</li>
<li>2x 10Gb network team (internal)</li>
<li>2x 10Gb network team (external)</li>
</ul>
</li>
</ul>
<ul>
<li>Two Dell R620 HAProxy servers (CloudFlare):
<ul>
<li>2x Intel Xeon Processor E5-2637v2 @ 3.5 GHz</li>
<li>192 GB RAM</li>
<li>CentOS 7</li>
<li>2x 10Gb network team (internal)</li>
<li>2x 10Gb network team (external)</li>
</ul>
</li>
</ul>
<ul>
<li>Two Dell R630 Railgun servers (CloudFlare):
<ul>
<li>2x Intel Xeon Processor E5-2699v3 @ 3.5 GHz</li>
<li>192 GB RAM</li>
<li>CentOS 7</li>
<li>2x 10Gb network team (internal)</li>
<li>2x 10Gb network team (external)</li>
</ul>
</li>
</ul>
<ul>
<li>2 Dell R630 Redis servers:
<ul>
<li>2x Intel Xeon Processor E5-2687Wv3 @ 3.1 GHz</li>
<li>128 GB RAM</li>
<li>CentOS 7</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>Three Dell R630 Service servers for tag engine/search:
<ul>
<li>2x Intel Xeon Processor E5-2643v3 @ 3.4 GHz</li>
<li>64 GB RAM</li>
</ul>
</li>
</ul>
<ul>
<li>One Dell R620 Backup server running NetBackup (most backups):
<ul>
<li>2x Intel Xeon Processor E52620 @ 2.0 GHz</li>
<li>16 GB RAM</li>
<li>14 drives
<ul>
<li>Mirrored Pair for OS</li>
<li>12 4TB 10K RPM RAID10 for backups (DAS)</li>
</ul>
</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>One Dell R730xd SMB3 Backup server (SQL backups):
<ul>
<li>2x Intel Xeon Processor E5-2623v3 @ 3.0 GHz</li>
<li>16 GB RAM</li>
<li>30 drives
<ul>
<li>Mirrored Pair for OS</li>
<li>16 6TB 7.2K RPM RAID10 for backups (Internal)</li>
<li>12 4TB 10K RPM RAID10 for backups (DAS)</li>
</ul>
</li>
<li>2x 10Gb network team</li>
</ul>
</li>
</ul>
<ul>
<li>Four Dell FC630s VMWare ESX(in Two FX2s Chassis):
<ul>
<li>2x Intel Xeon Processor E5-2698 v2 @ 2.30 GHz</li>
<li>768 GB RAM</li>
<li>16x 10Gb network team (8x 10Gb per FX2s)</li>
</ul>
</li>
</ul>
- 2 Cisco ASR1001-X routers
- 2 ASR1001 Routers
- 2 Fortinet 800C Firewalls
- 2 Cisco Nexus 5596 Cores in an active/active redundant configuration
Sources:
1. [Stack Overflow's New York Data Center (Server Fault Blog)][39]
2. [Designing for Scalability of Management and Fault Tolerance (Server Fault Blog)][40]
3. [What Was Stack Overflow Built With?][41]
4. [Stack Overflow Server Glamour Shots][42]
5. [Technology and SEO profile for stackoverflow.com][43]
6. [Stack Overflow and DVCS][44]
7. [Stack Overflow Network Configuration][45]
8. https://stackexchange.com/performance
[p1]: https://www.peer1.com/
[qts]: https://www.qtsdatacenters.com/
[inap]: https://www.internap.com/
[1]: https://stackoverflow.com/questions/177901/what-does-wisc-stack-mean
[2]: https://stackoverflow.blog/2009/03/15/stack-overflow-and-bizspark/
[3]: https://www.microsoft.com/en-us/server-cloud/windows-server/
[4]: https://www.iis.net/
[5]: https://www.microsoft.com/en-us/sql-server/sql-server-2017
[6]: https://serverfault.com/questions/34846/in-place-upgrade-from-windows-server-standard-to-enterprise-or-datacenter
[7]: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)
[8]: https://en.wikipedia.org/wiki/ASP.NET
[9]: https://www.asp.net/mvc/mvc5
[10]: https://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx
[11]: https://jquery.com/
[12]: https://msdn.microsoft.com/en-us/library/bb386976.aspx
[13]: https://github.com/StackExchange/dapper-dot-net
[14]: https://git-scm.com/
[15]: https://enterprise.github.com/home
[16]: https://mercurial.selenic.com/
[17]: https://subversion.apache.org/
[18]: https://www.scootersoftware.com/
[19]: https://www.google.com/recaptcha/intro/
[20]: https://code.google.com/p/wmd/
[21]: https://code.google.com/p/pagedown/
[22]: https://github.com/google/code-prettify
[23]: https://www.google.com/analytics/
[24]: https://www.haproxy.org/
[26]: https://github.com/StackExchange/MarkdownSharp
[28]: https://www.mathjax.org
[29]: https://blog.stackoverflow.com/2009/12/blog-outage-backup-policies/
[30]: https://blog.stackexchange.com/2015/07/the-new-stack-exchange-blog/
[31]: https://stackoverflow.blog/
[32]: https://www.websocket.org/
[33]: https://meta.stackexchange.com/questions/125677/new-feature-real-time-updates-to-questions-answers-and-inbox
[34]: https://meta.stackexchange.com/a/168148/152859
[35]: https://creativecommons.org/licenses/by-sa/4.0/
[36]: https://www.opensearch.org/
[37]: https://en.wikipedia.org/wiki/Atom_%28standard%29
[39]: https://blog.serverfault.com/2010/10/29/1432571770/
[40]: https://blog.serverfault.com/2010/09/10/1097492931/
[41]: https://stackoverflow.blog/2008/09/21/what-was-stack-overflow-built-with/
[42]: https://stackoverflow.blog/2009/12/14/stack-overflow-rack-glamour-shots/
[43]: https://stackoverflow.blog/2008/04/28/our-dedicated-server/
[44]: https://stackoverflow.blog/2010/04/23/stack-overflow-and-dvcs/
[45]: https://stackoverflow.blog/2010/04/23/stack-overflow-and-dvcs/