Performance comparison between ServiceStack's new "NetCoreApps" vs old "ServiceStackApps" on Linux

Did anyone already create a reproducable Linux benchmark comparison of one or more of the older ServiceStackApps found here and the new .NET Core Apps found here?

Maybe somebody already run Locust or Tsung against a pair?

I’d be interested how they compare in terms of CPU/Load avg/Mem and especially of course requests/second.

We’ve run some adhoc benchmarks and have noticed significant performance improvements vs Mono (which wasn’t hard as Mono’s HTTP Stack is relatively slow). Running locally in Windows during development also feels noticeably faster which was a welcomed surprise as it was pretty fast to begin with.

Although note for this first release we’re just focused on compatibility first, after we have a stable release out we’ll look at profiling and performance tuning as there are some areas we can further improve. After our first performance release we’ll collect some benchmarks and compare them with .NET 4.5 and Mono and publish the results.

Ok, appreciated.

I plan to switch our productive code to netcore asap (basically I’m already working on it).

(I’m the one who plans to have 2 million users / day using our backend which is currently running with Mono, but with a way lower DAU figure on another project. Fortunately the 2M DAU arrival is delayed to February so we’ll hopefully have enough time to sort out problems and improve performance in order to reduce costs of the backend servers, which are quite high already because of the Mono infrastructure).

Awesome, if you’re running on Mono I’d definitely recommend moving straight away as well - .NET Core is finally a platform we can recommend running on Linux in production that’s performant, stable and now well supported.

To give a status update: we’ve basically completed the port to .NET Core with all sub projects (i.e. SS.Text/OrmLite/Redis/Aws/Admin/Stripe) having 100% test coverage. But it’s going to take a while to port tests from the ServiceStack framework itself since it tests different .NET 4.5 host types and features which aren’t available in .NET Core e.g: SOAP, OAuth2 (no DNOA). Whilst @xplicit is working on that I’m porting and testing the Live Demos which have already uncovered and resolved some issues, but otherwise we’re pretty happy with the current .NET Core support.

With that said we’re planning for a Release sometime next week, in which we’ll have more complete docs on which packages are available and which features had to be removed.

2 Likes