Hacker News new | ask | show | jobs
by crinkly 313 days ago
Sometimes. It's usually a lot bigger than that the moment you pull in any simple dependencies. Also the CLR memory overhead is horrible. Our .Net guys have serious problems with startup time (JIT) and initialy latency on .Net Core so I don't trust the fast claim. And no you can't just AOT everything.

We moved a couple of critical services over to Go because of those two issues and it turned a few heads.

1 comments

Curious what the use-case is where JIT latency is an issue for a http service?
We are fairly high traffic. Deployments, even rolling, can and do cause fairly noticeable latency spikes and side effects like upstream services having to queue requests, pool escalations, all sorts. Warming stuff up before first hit is a complete bitch on top of that.

I notice Apple had similar problems and moved some of their back end to Swift from JVM recently. There was a post on here.

Yep, downside of virtual language like that. Upside of Java/.Net is their extensive libraries and really good developer experience. Just like Golang GC caused Discord endless amount of headaches in some of their routes.

I have some heavy ASP.Net stuff too, yep, we have to prewarm it before putting into production.

Probably Serverless functions, which is a use case where standard ASP.NET Core is not particularly good.

I'd blame Serverless more than ASP.NET Core for the bad performance in that case though.