A Fastify server app can easily serve thousands of reqs/s.
https://www.fastify.io/benchmarks/
The whole StackExchange network serves on average 50 page views per second.
A Fastify server app can easily serve thousands of reqs/s.
https://www.fastify.io/benchmarks/
The whole StackExchange network serves on average 50 page views per second.
EDIT: just tested on the eslint codebase:
cold (nothing installed, no cache): bun: 1.53s, pnpm: 8.25s, npm: 25s
hot (already installed, noop): bun: 218ms, pnpm: 1300ms, npm: 1230ms
Webpack 5 is probably the last version. Not my words, but from its main author. Vite is the new de facto bundler which uses EsBuild (written in Go).
I've swapped much of my usage of npm over to bun. I still work on projects where nobody else is using bun, but I can run `bun install` instead of `npm install` and `bun run` instead of `npm run` and these run probably 100x faster.
Except that Bun is not going to be able to do what esbuild is doing because Go and other languages are in another league regarding perf.
esbuild is a javascript transpiler. it transpiles typescript into javascript that v8 or another js engine can run. it's written in go which is the main reason it's faster than pure js transpilers like babel. were you thinking that esbuild is for go code? i'm confused
bun is a combined javascript transpiler & runtime & test runner & package manager. it improves performance of many things:
- startup time including transpiling code and resolving modules and initializing the javascript vm - installing packages - running tests
it can also improve runtime performance (it is faster at basically every bit of the node api it covers & it has its own versions of some things like http servers that can have better performance than the node APIs)
switching your project to rust would improve runtime performance, but would make it slower to run tests & compile the project & use an ide language server & …
i haven't used go but i've heard it's fast to compile & has better runtime performance than js
Got a reference or specifics on that one?
FWIW the presenter is employed at Vercel on building Turbopack, which is presented as the "webpack successor" - so I'm quite sure either way he wouldn't agree with your take on esbuild being the future ;)
The Vite part I added it myself. Sorry if that wasn't clear.
Regarding TurboPack, we'll see. So far it's not very popular outside of Next. SvelteKit uses Vite, even though Vercel is paying for two people full time working on it.
Culture difference behind the misinterpretation maybe? The lack of self-inflation, exaggerated confidence and exceptionalism we might expect from Americanized presenters shouldn't be taken for insecurity or doubt ;)
I'd listen to what they say at face-value rather than trying to read the lines applying the wrong lens.
> Regarding TurboPack, we'll see. So far it's not very popular outside of Next.
It's very early still, in alpha, and isn't recommended for production use outside of Next, where most of the focus on integration and tooling has been so far AFAIK.
Basic examples:
- Latency/processing (which suffers as req/s grows or peaks)
- Memory usage (idle, at peak)
- Startup time (one-off jobs, serverless cold boot)
The "thousands of req/s" benchmarks are often unrealistic - either super simple (the benchmark you linked serves a static tiny JSON payload) or hyper optimized and not representing a run-of-the-mill webserver.
A hello world Fastify project can get you into the 20k reqs per second. On the same hardware with a real project you probably will get a couple thousands which is more than enough to satisfy 99% of projects.