Thoughts on .NET Core's upcoming JSON stuff

Demis, I just wanted to hear what your thoughts are on Net Core 3’s work on JSON parsers. Does this help with anything perf related for ServiceStack.Text in the future?

It’s a completely different library, it has no impact on any other JSON implementation.

What we don’t know yet is how much faster it will be, whether it will end up supporting .NET Framework/.NET Standard as well, whether it’s feasible in making it substitutable, how different the wire format will be, how well it supports different data types vs SS.Text and whether it’s extensible to be able to support different SS.Text customizations/features.

Basically I don’t know what the strategy will be until it’s released and I’m able to assess it properly.

It’s Json.NET - from NewtonSoft. The library has been around for some time and offers comparable speed to ServiceStack. Some benefits here, some benefits there, but all in all it’s just a matter of personal taste afaict.

As long as the json (de)serializer of ServiceStack is fast as hell - including Span support (which really leverages memory use, minimal block copies and CPU usage) there is no reason to switch.

It’s an alternative to JSON.NET, they’re developing a new perf-focused UTF8 JSON Serializer, as it’s UTF8-only they can use similar techniques that make Utf8Json fast.

But it’s still early and there’s a lot of unknowns, primarily it’s unclear if they will support .NET Framework and how extensible it will be and whether it will be possible to implement existing SS.NET features that Service Clients need.