Nodejs backends are not "as performant as you build them" nodejs is slow! This is an undeniable fact. If you ever have to do anything computationally intensive, which every backend at some point will nodejs will become the bottleneck.
‘nodejs is too slow’ is high school level backward rationalization.
‘nodejs is too slow for my use case’ is getting there.
Most stuff we engineer maxes out the database way way waaaay before it saturates its CPU capacity regardless of the language used. You’d better know very well that you’ll be vulnerable to this as a business, otherwise your inefficient competitors will take your money faster than you can build value.
What do you think about how well uWebSockets.js performed in the TechEmpower benchmark? Just js is admittedly experimental, but it has the fourth highest score, and the highest score of any non-Rust framework as well which I found interesting. Elysia (a Bun framework) did pretty well too.
Deno would have probably scored well too (it uses Rust's Hyper crate under the hood), but they're only running a single instance of the server despite Deno supporting the Linux SO_REUSEPORT socket option, which is important because the test is run on three servers with Intel Xeon Gold 5120 Processors that have 14 cores and 28 hyperthreads [0].
baq|1 year ago
‘nodejs is too slow’ is high school level backward rationalization.
‘nodejs is too slow for my use case’ is getting there.
Most stuff we engineer maxes out the database way way waaaay before it saturates its CPU capacity regardless of the language used. You’d better know very well that you’ll be vulnerable to this as a business, otherwise your inefficient competitors will take your money faster than you can build value.
SantiagoElf|1 year ago
[0] - https://www.techempower.com/benchmarks/#hw=ph&test=composite...
throwitaway1123|1 year ago
Deno would have probably scored well too (it uses Rust's Hyper crate under the hood), but they're only running a single instance of the server despite Deno supporting the Linux SO_REUSEPORT socket option, which is important because the test is run on three servers with Intel Xeon Gold 5120 Processors that have 14 cores and 28 hyperthreads [0].
[0] https://github.com/TechEmpower/FrameworkBenchmarks/tree/9f0c...
alex_lav|1 year ago
willsmith72|1 year ago
> the whole premise of node was async io, so if you're doing a bunch of blocking stuff then yeah, you're going to have issues.
throwaway60330|1 year ago