

It was something we expected but not to the degree we saw it and had other complicating factors unrelated to the Core move. NET Core being much more output-stream oriented. We're looking into HTTP trailer headers for some timing purposes as a result of. InfoQ: Were there any unexpected benefits or spin-offs from the migration? Craver: I wouldn't say much was unexpected by the time we converted from the migration. NET Core so bots trying to slam us initially caused more noise, but that's just a nuisance and a consequence of being a big website. Form validation is also much more aggressive in. So our request pipeline, the order we spin up authentication, and custom filters in ASP.NET were the main areas. to make Stack Overflow work the way we want or scale the way we need - that's where pain usually lies. InfoQ: Were there any specific areas that caused problems? Craver: For the apps, basically wherever we've gone outside the framework to extend, replace, hack, etc. We'll be blogging about those in more detail soon.įrom: Stack Overflow The Architecture 2016 - Nick Craver's Blog There were few rewrites, but adjustments and shims in place for the migration as we moved in not one "big bang" approach.
#NANOSPELL ASP.NET STACK OVERFLOW FULL#
But then others would have been blocked for months to years.life is full of tradeoffs :) In other words, if we were later adopters, we would have done less work. NET Core 2.x where ".NET Standard" became a thing and compatibility increased tremendously, most of that rewrite effort was obsolete. NET Core 1.x days, the APIs changed drastically, so when we were making our libraries compatible, we had significant rewrites to quite a few components to make them work. InfoQ: What components needed rewriting? Craver: So this is a little complicated, bear with me. That migration took about 1.5-2 dev person years to complete. NET Core as our primary project (not only, but the primary). After we shipped Stack Overflow for Teams which was a significant Architecture (my team!) time expenditure, we then moved on to.

We knew these dependencies would have to be done before any app using them (including our main applications). Marc Gravell and I began making our open source libraries (like Dapper, MiniProfiler, StackExchange.Redis, etc.) compatible back in the pre-.NET Core 1.x days. NET Core? Craver: We didn't really decide anytime recently, we decided years ago that we wanted to go this direction. InfoQ: Why did you decide that now was the time to move to. InfoQ recently sat down with Nick Craver, architecture lead on the migration, and explored the challenges in more detail:

The back end has also been changed to support the latest version of SQL Server 2019.Īnd all these changes have been happening whilst the system has been continuing to support the millions of monthly users. NET Core, StackOverflow has also been making changes to their user interface to support a greater range of accessibility and the dark mode. The front end CDN, DNS and load balancing and backend Elastic Search and Redis caching components are not affected. The persistent storage is SQL Server which is also made highly available via Availability Groups. High availability is provided in these services through multiple layers of redundancy. The web and service tiers provide the main Q&A application, Careers, Mobile API, API v2 and the Tag Service. The latest changes affect the web and service tiers of their architecture which are moving from ASP.Net MVC to ASP.Net Core. Along the way we have to swap out parts that existed in the old.

"Here at Stack Overflow we're migrating many things to. This is the platform that powers not only Stack Overflow but also 170+ question and answer communities, as well as private Q&A sites for companies. Stack Overflow has recently completed migrating their system architecture from.
