Decision at Raygun about .NET, Node.js, FrameworksFullStack, Languages

Avatar of CmdrKeen
Co-founder & CEO at Raygun
.NET.NETNode.jsNode.js
#FrameworksFullStack
#Languages

The core Web application of Raygun is still a Microsoft ASP.NET MVC application. Not too much has changed from a fundamental technology standpoint. We originally built using Mono, which just bled memory and would need to be constantly recycled. So we looked around at the options and what would be well suited to the highly transactional nature of our API. We settled on Node.js, feeling that the event loop model worked well given the lightweight workload of each message being processed. This served us well for several years.

When we started to look at .NET Core in early 2016, it became quite obvious that being able to asynchronously hand off to our queuing service greatly improved throughput. Unfortunately, at the time, Node.js didn鈥檛 provide an easy mechanism to do this, while .NET Core had great concurrency capabilities from day one. This meant that our servers spent less time blocking on the hand off, and could start processing the next inbound message. This was the core component of the performance improvement.

We chose .NET because it was a platform that our team was familiar with. Also we were skilled enough with it to know many performance tips and tricks to get the most from it. Due to this experience, it helped us get to market faster and deliver great performance.

#Languages #FrameworksFullStack

23 upvotes1 comment21.4K views
Remote Admin
Remote Admin
February 19th 2019 at 5:07pm

great insights. quick question, if your team has no familiarity with .NET Core, will you guys still consider it?

Reply
Avatar of John-Daniel Trask

John-Daniel Trask

Co-founder & CEO at Raygun