
StackOverflow Architecture (2016) - enitihas
https://nickcraver.com/blog/2016/02/17/stack-overflow-the-architecture-2016-edition/
======
number6
Why Microsoft? Why IIS? Why asp.Net?

Was ist because there was little other alternatives or is there a rational
behind this?

Coming from a Linux World in all Server I am ignorant to the benefits it might
have. Or why to pay let alone the license for services and software that is
enterprise ready and for free in Free Software Land

~~~
neverminder
Couple of years ago I was at this event where Stackoverflow had their stand,
so I asked them the ultimate question - what stack does Stackoverflow run on?
When they answered ".NET" I couldn't believe it, thought it was a joke.
Stackoverflow, one of the most prominent sites in the world of free and open
software is actually running on a stack that is neither free nor very open.

~~~
darklajid
While that might've been true (if we discount projects like Mono), today
asp.net is open and actually _developed_ in the open (aka 'better than
Android') and dotnet core just reached version 2.0.

So .. I don't think what you're saying applies in today's world. The biggest
(proprietary) dependency they have in this stack as far as I can tell? I'd
guess it's Microsoft SQL Server.

~~~
BrentOzar
> The biggest (proprietary) dependency they have in this stack as far as I can
> tell? I'd guess it's Microsoft SQL Server.

They've tested running the code atop PostgreSQL as well, plus running SQL
Server on Linux. They're pretty flexible folks. Microsoft makes it attractive
to stay on their stack, though.

------
callmekatootie
Does anybody know if there is a similar blog for their Software Architecture?
Particularly, how they have modelled the points system and the badges? Does it
all exist in their models?

------
ramshanker
With all the good and smart people over there, and considering that they have
like <100 servers self-hosted, I really hoped they would be ready for IPv6 and
set standards for others.

Nick: If you are reading this, any idea, when you guys would be ready. Wold be
interesting to read the execution blog post.

[http://ready.chair6.net/?url=stackoverflow.com](http://ready.chair6.net/?url=stackoverflow.com)

~~~
skrebbel
I'm a networking noob. Why would they invest time in this? What's the benefit
for them to run on IPv6? What's the benefit for you, a user?

~~~
y4mi
ipv6 clients cant talk with ipv4 servers. so they need a packet translation,
which increases the latency.

there shouldn't be any benefits in this particular case though, because
endusers would never actually talk with the application servers.

the loadbalancers are probably the only public facing servers, which probably
(didn't check) support both.

so communication is like this

    
    
        _client_ <== ipv6 ==> _loadbalancer_ <== ipv4 ==> _application server_

vs.

    
    
        _client_ <== ipv6 ==> _loadbalancer_ <== ipv6 ==> _application server_
    

the situation the GP was talking about is this:

    
    
        _client_ <== ipv6 ==> _ipv6 to ipv4 translation proxy_ <== ipv4 ==>  _loadbalancer_ <== ipv4 ==> _application server_
    

you could theoretically reduce minor latency by just addressing application
servers directly

    
    
        _client_ <== ipv6 ==> _application server_
    

but thats a terrible idea from both reliability and security perspectives

------
zython
I enjoyed this very much. Any more of this ? I like highscalability.com but
this is more hands on. Anyone have something like this ?

------
Decabytes
The most interesting statistic here for me is the time spent processing SQL
queries. It really only takes a few tens of ms in most cases to processes. But
due to the sheer volume of requests over the course of a day,it ends up being
days worth of time.

------
galeforcewinds
Similar detail, itemized, and with hardware specs appears to be at
[https://meta.stackexchange.com/questions/10369/which-
tools-a...](https://meta.stackexchange.com/questions/10369/which-tools-and-
technologies-are-used-to-build-the-stack-exchange-network)

~~~
jlgaddis
Or, for damn near _all_ the detail, just click on the third link in the
article, "Stack Overflow: The Hardware - 2016 Edition" [0] -- and/or check out
the rest of this series (conveniently mentioned and linked to at the very top
of _this_ article).

[0]: [https://nickcraver.com/blog/2016/03/29/stack-overflow-the-
ha...](https://nickcraver.com/blog/2016/03/29/stack-overflow-the-
hardware-2016-edition/)

