@@s1v7 It will come out like that, but it would be useful to see and compare the cpu and memory consumptions. Also, Deno and Bun still cannot use all the nodejs libraries. So it is still problematic to switch from nodejs to bun or deno.
I do like these tests since it's mirroring what I'm seeing from techempower benchmarks between nodejs and go-std where Plaintext only really tests server handling. JSON 1-query 20-query Fortunes Updates Plaintext 561,077 299,223 18,137 256,269 7,765 738,221 //Go-std 320,168 95,776 6,860 70,833 3,048 454,082 //NodeJS
@@_garicas I think both. Sometimes I miss strong typing but honestly, in case of JS I totally get it. It can be an issue for big projects but it also in case of JS can be a benefit for the small services. I also like package management. And I like the simplicity of working with objects, where I can do whatever I like manipulations.
@@a0flj0 Rust is on whole other level. IDK why would anyone redo anything in Golang if he has resources. Go is a good language to bootstrap things, but it falls off quickly in almost any scenario. Even if you use much slower languages than Rust or Go, if they're popular they still usually have much better approaches typing and error handling in requests. And then you can just keep adding instances endlessly. Poorly optimized, awfully written NodeJS without typescript would have 0 advantages over simple server in Go, but you can still just throw 16GB RAM and 8 server instances at it and it would work like charm.
Thanks Anton. I wanted to improve the node code after I saw the previous terrible performance. I have used node for years now and I knew it could do better than what I saw initially. I will never argue node is better than go but I will say it is a very good runtime for most projects if you know how to use it.
Another one who sits in front of a computer to write nonsense, 90% of applications don't need this 'high concurrency' that Go claims to have. Nowadays, there are scalable structures like AWS, edge computing, etc. In the tech world, everything changes; don't expect Node.js to remain so inferior to Go in the coming years, or don't be surprised if the tables turn. Which, in reality, wouldn’t even be that significant because a development structure doesn’t live off benchmarks alone.
True, but in real world, the difference would be much bigger with expanding complexity, libraries, frameworks, scalabilities, etc. I am mainly code in JS now but i know for sure that Go would destroy JS performance in most production cases since i have code in both language in comparable projects. Go also has a very fast framework (fiber) and overall higher quality libraries
Hey Anton I was the one that suggested to use the cluster module in the last video. Thanks for making another Node vs Golang and briefly discussing the cluster module and going in depth in kubernetes. I know you will be a very big youtuber because you listen to us in the comments thanks again man!
Why did you run 2 replicas with gomaxprocs=1 instead of 1 replica with gomaxprocs=2 and 2000m limit? Your second test clearly shows that this has an impact on the performance of the go app. Also, now that you switched to 2 core machines why not remove the cpu limit entirely? We discussed before about starvation of system resources but with 2000m limit on a 2 core machine the same starvation can happen so there should not be a difference right?
i get your point. i used gomaxprocs=1 and a 1 CPU limit just to have the same settings as for node.js. regarding the second question, in theory yes, but i haven't tested that scenario yet.
Thanks! I knew from personal experience NodeJS is crazy fast for a scripting language. I’m seriously interested in seeing a runtime battle. Bun, Node, Deno, and there are some serverless runtimes too, but I guess the big three are the interesting ones.
As someone who works in a small company where we deploy Python flask as a backend for internal development, I would love to see a Flask vs FastAPI vs GO (or Node), just to see what are the performance differneces at things beyond the scale that I'll probably ever see
in a battle of snails, flask is synchronous. That means it accepts/process 1 request per time, this is a HUGE bottleneck while FastAPI is asynchronous by nature. You're have to deploy multiple webworkers to make flask "useful", but that cost compute resources. FastAPI = async def baby, concurrency to the roof. But in the end, python is single-threaded (GIL), so don't expect anything close to a full compiled /JIT language. Python is alone on his own league, of poor performance and speed. I suggest you to start changing from Flask to FastAPI, it needs very little change in the code, in 5 minutes you change everything just routes and request objects, and you'll gain a HUGE concurrency performance.
Java vs C# vs Go with all the optimizations. That would be a good comparison. Maybe even default C# vs optimized C# just like this video's Go comparison.
Thank you so much for your videos, i really appreciate your job! If you're using NodeJS i recommend using cluster mode for each 4 cpu cores, simply because libuv default config (i tried modifying this config and performs worse)
The differences are far less than I expected. JavaScript is pretty good! What I really like to see is the same benchmark, but using bun (and possibly Deno)
I really appreciate this series of videos comparing frameworks, languages, and configurations. It is interesting to see a semi-naive implementation vs an optimized implementation comparison. It is helpful to understand how much configuration can matter. Thanks for making and sharing this content with us.
True. Yet JS due to it's availability and 0 learning curve - makes everyone think they're pro in JS. That's why 90% of publicly available of JS is total crap. So JS has it's niche where it excels. But people will still multiply shit with it
@@AlexanderMoon Golang is so much easier to learn and use from get-go than Typescript, Node ecosystem alone probably takes couple years to learn and is required to do any real job. Go is a wonderful language to make things fast and easy, cut corners and do relatively good job. But anything you have time to think about, Go is one of the worst languages even when compared to Node/Typescript, with poorly written type system, weird error handling and worst of all, - limited support for main paradigms, - OOP and FP. It feels like golang has weirdly good publicity. Despite only universal advantage being its simplicity.
@@commonfolk663 disagree. learning a language is not same as learning an ecosystem. Go is way more complex than JS. JS has barely no types bypassing aspects such as typesafety, mem allocations, immutability, concurrency whatsoever. So no, JS learning curve is incomparably smaller than Go's.
the number of triggered JS people here is quite funny. If we constantly say he didn't do it right, I can say use go fiber and literally destroy JS once and for all.
@@spicynoodle7419 indeed, though I prefer the libraries built on stdlib as they're more than fast enough and have better compatibility. But if you need raw speed fiber is awesome.
For those who knows your Chanel very well, it's useless to blur the screen on the beginning of the benchmark videos 😂😂😂 we all know that the blue line is for go lang, what surprises me most, is node not being a green line 😂😂😂😂😂
Rust will obviously be even better, since Anton already did a similar test of Rust vs Go, and Rust was decisively better than Go. But, as someone already mentioned above, for a very large number of applications node is good enough, i.e. you don't get enough runtime savings from using a compiled, statically typed language that generates more efficient binaries to justify the higher development time costs. Node has a very well carved out niche in which it is pretty much the best choice, and unlikely to be replaced by anything in the foreseeable future.
@@AntonPutra The reason I make the comment is that I think Node (and Java, and C#) are in the realm of companies that are looking at Rust and C++ (because C23) because it has a potential "very large" benefit that may be too big to ignore in light of the fact where the trade-off used to be much greater before Rust and in older versions of C++ that were not modern enough for a modern workforce and a modern codebase and architecture, but now is much more relevant.
Thanks for the follow up. I think this really shows that JS is pretty good. Considering how easy it is to write and can still compete with something like go or Java is amazing
@@roccociccone597 its not that its faster......the question is how faster....if the difference is small then there is no need to learn Go or new technology and stick to JS and optimise in other parts of the application
Anton, why is there CPU throttling when the CPU usage on Go: default and Go are not at the 1 CPU limit? Is the CPU plot not showing iowait or iosteal? Does `cpuset` do anything in a k8s env? When using raw hardware, using cpuset to avoid cross-socket traffic helps performance a great deal. If you're capping at 1cpu, then one may as well pin it to that core so it doesn't have to worry about floating to another core or socket. Thanks for the diligent videos!
maybe one day, we cpp devs get a rest api test to once and for all decide which is the “fastest”. actix or drogon? p.s. i tried rust, it’s ok. i hate fighting with the compiler. i’d rather shoot my self in the foot
Funny to observe people still think Bun is really Node killer and really faster & better 😁 ( one more killer, oh no 😁) Like, uWebSocket used by Bun faster than Rust Actix Web, so the comparison with NodeJS related on req/res for sure will be faster lol, but at the same time checking if string starts with some specific substring was ~14 times slower vs NodeJS. Checkmate.
Just take a look at the amount of Bun devs/community and think how much time do they need to fix all the problems/bugs they have, to deliver everything NodeJS has today. I guess lots.
no, actually, if you allow go to use the default settings and utilize all available CPUs, it is slower.. to improve go, you need to limit the number of threads to match the limit given in the settings.
He did a comparison of Rust and Go, similar to this one, after he got feedback on an initial version. Rust came out on top of Go both times in absolutely every metric. Not by an astronomic amount, but, IIRC, by somewhat more than Go is better than node in this comparison. Which translates to Rust being better than node by an even larger margin than Go is.
compare two technologies is really hard because you need to understand deeply how they work. you did better now going more deeper how nodejs works and it's fair to say that go has a wonderful resources management
👋What should I test next??? 👉 Previous Node.js vs Go Benchmark: ruclips.net/video/ZslbMp_T90k/видео.html 👉 [Playlist] New Benchmarks: ruclips.net/p/PLiMWaCMwGJXmcDLvMQeORJ-j_jayKaLVn&si=p-UOaVM_6_SFx52H
@@AntonPutra true :D and you should never listen to a single youtube commenter :D but just in case you get that feedback from multiple sources, that might be something to improve. This far, its just "at least one person thinks this could have more concise" :D
So I was right saying it was cause it's single threaded. Ps you tried so hard to make go look good enough compared with js. 🙂 I appreciate what you are doing, it's super cool content! Being a java dev I'd really like to see how best of each language setups compare. I mean like eg combining best go, rust, js, java for instance. One more time - it’s super cool what you’re doing!
Conclusion from part 2: Node Js is not bad at all just not many DEVs know how to work with it and they jump to GO for out of box solution. Then they brag about it.
We use nodejs in production but use the cluster module in addition we make lots of v8 optimizations when using workers. NodeJS gets a bad rep cause alot of noobs that don't know what they are doing
This is pointless since author does not know how to write multithreaded Node.js. There are two possibilities to transfer data to a worker without serialization/deserialization: through typed arrays and by porting objects from one V8 heap to another, which is also part of the threads API.
why bother with all this rubbish when you can just use Go and get literally all of this performance without any headaches like that. The way people try to get JS to do stuff it wasn't intended for is funny.
It's really cool that you make new videos with the corrections, we can all check those PRs here and learn something new.
thanks, the more mistakes i make, the more content i generate 😂
Node vs Bun vs Deno please
next 💯
let me guess - bun will be the fastest, node - the slowest
@@s1v7 It will come out like that, but it would be useful to see and compare the cpu and memory consumptions. Also, Deno and Bun still cannot use all the nodejs libraries. So it is still problematic to switch from nodejs to bun or deno.
@@AntonPutra really interesting
deno had major update (v2), interesting how much better it's gotten
@@snatvb Still in RC and not released ? But yeah, definetly want to see Deno V2
Very impressive that NodeJS can handle so many req/s considering it's running on a VM (v8) and Go compiles to native code.
I do like these tests since it's mirroring what I'm seeing from techempower benchmarks between nodejs and go-std where Plaintext only really tests server handling.
JSON 1-query 20-query Fortunes Updates Plaintext
561,077 299,223 18,137 256,269 7,765 738,221 //Go-std
320,168 95,776 6,860 70,833 3,048 454,082 //NodeJS
yeah, V8 has JIT, NodeJS has C++ addons, and so on
Fully agree, being mostly java dev I'm impressed by js (node) performance. And I know you wouldn't hear it often from Java devs - JS is cool language!
@@kamurashev do you think the language itself is cool (syntax, semantics, etc) or the runtime? Or both?
@@_garicas I think both. Sometimes I miss strong typing but honestly, in case of JS I totally get it. It can be an issue for big projects but it also in case of JS can be a benefit for the small services. I also like package management. And I like the simplicity of working with objects, where I can do whatever I like manipulations.
Now we can finally justify moving all of our tech stacks over to Go and blow our 2 users minds.
He also did a test Rust vs Go, also in two versions, an initial one and one after receiving feedback. Rust is way better than Go.
python -> go pipeline is 100% worth it. 10x improvements on the same hardware are pretty typical with a moderately complex application.
@@a0flj0 Rust is on whole other level. IDK why would anyone redo anything in Golang if he has resources.
Go is a good language to bootstrap things, but it falls off quickly in almost any scenario. Even if you use much slower languages than Rust or Go, if they're popular they still usually have much better approaches typing and error handling in requests. And then you can just keep adding instances endlessly. Poorly optimized, awfully written NodeJS without typescript would have 0 advantages over simple server in Go, but you can still just throw 16GB RAM and 8 server instances at it and it would work like charm.
😂
Let’s do elixir vs golang
okay, it's already very close to the top of my list 😊
Thanks Anton. I wanted to improve the node code after I saw the previous terrible performance. I have used node for years now and I knew it could do better than what I saw initially. I will never argue node is better than go but I will say it is a very good runtime for most projects if you know how to use it.
true
Congratulations to Golang for its fair participation in NodeJS Paralympics.
Lol
😂
Another one who sits in front of a computer to write nonsense, 90% of applications don't need this 'high concurrency' that Go claims to have. Nowadays, there are scalable structures like AWS, edge computing, etc. In the tech world, everything changes; don't expect Node.js to remain so inferior to Go in the coming years, or don't be surprised if the tables turn. Which, in reality, wouldn’t even be that significant because a development structure doesn’t live off benchmarks alone.
@@MarcusTorres-zv5cv Yeah, there are scalable structures. AWS billing goes brrrr...
@@MarcusTorres-zv5cv ok junior
Way better now...
yes thanks
the difference is not as big as I expected
True, but in real world, the difference would be much bigger with expanding complexity, libraries, frameworks, scalabilities, etc. I am mainly code in JS now but i know for sure that Go would destroy JS performance in most production cases since i have code in both language in comparable projects. Go also has a very fast framework (fiber) and overall higher quality libraries
yes, and i haven't started comparing deno or bun with go yet 😊
@@AntonPutra yeah do bun next
Great video! Can you please do something to improve Java application performance on K8s as well? Thanks!
yes, i'll come back to Java soon
It will be interesting to see Elixir vs go lang
will do
@@AntonPutra Thank you Anton,amazing videos learning a lot
Hey Anton I was the one that suggested to use the cluster module in the last video. Thanks for making another Node vs Golang and briefly discussing the cluster module and going in depth in kubernetes. I know you will be a very big youtuber because you listen to us in the comments thanks again man!
thank you!
Go vs Bun please!!!
yes, but deno vs. node.js vs bun is next, then with go
@@AntonPutra ty!
Why did you run 2 replicas with gomaxprocs=1 instead of 1 replica with gomaxprocs=2 and 2000m limit?
Your second test clearly shows that this has an impact on the performance of the go app.
Also, now that you switched to 2 core machines why not remove the cpu limit entirely? We discussed before about starvation of system resources but with 2000m limit on a 2 core machine the same starvation can happen so there should not be a difference right?
i get your point. i used gomaxprocs=1 and a 1 CPU limit just to have the same settings as for node.js. regarding the second question, in theory yes, but i haven't tested that scenario yet.
As compare to last node vs go, in this node performed very close to golang.
yes due to improvements
Thanks! I knew from personal experience NodeJS is crazy fast for a scripting language. I’m seriously interested in seeing a runtime battle. Bun, Node, Deno, and there are some serverless runtimes too, but I guess the big three are the interesting ones.
+Workerd probably easy to containerize.
Deno vs. Node.js vs Bun is next
The blurring on the first few minutes is irrelevant. We can figure which one is go and nodejs by line color and character lenghta 😂
😇
Now that was a fair run. Next I'd like to see the same but using frameworks for both. I'd pick hono for node and gin for go.
i'll compare the most popular js frameworks and will do a final comparison with go😊
Still waiting for the .NET part 2 :(
I'll definitely come back to it and improve in near future
Nodejs performance actually quite good, nice.
yes
please compare CROW (C++) vs Java or GO ??? pleaseeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
will do! but next Deno vs. Node.js vs Bun
As someone who works in a small company where we deploy Python flask as a backend for internal development, I would love to see a Flask vs FastAPI vs GO (or Node), just to see what are the performance differneces at things beyond the scale that I'll probably ever see
in a battle of snails, flask is synchronous. That means it accepts/process 1 request per time, this is a HUGE bottleneck while FastAPI is asynchronous by nature. You're have to deploy multiple webworkers to make flask "useful", but that cost compute resources. FastAPI = async def baby, concurrency to the roof. But in the end, python is single-threaded (GIL), so don't expect anything close to a full compiled /JIT language. Python is alone on his own league, of poor performance and speed.
I suggest you to start changing from Flask to FastAPI, it needs very little change in the code, in 5 minutes you change everything just routes and request objects, and you'll gain a HUGE concurrency performance.
Java vs C# vs Go with all the optimizations. That would be a good comparison. Maybe even default C# vs optimized C# just like this video's Go comparison.
will do
Thank you so much for your videos, i really appreciate your job! If you're using NodeJS i recommend using cluster mode for each 4 cpu cores, simply because libuv default config (i tried modifying this config and performs worse)
well, it's not the best option to deploy to kubernetes on a standalone VM, for sure
The differences are far less than I expected. JavaScript is pretty good! What I really like to see is the same benchmark, but using bun (and possibly Deno)
coming soon
Great about benchmark video like always!!! But this is even better with the explanation about CPU use in Kubernetes.
thanks i tried :)
I really appreciate this series of videos comparing frameworks, languages, and configurations. It is interesting to see a semi-naive implementation vs an optimized implementation comparison. It is helpful to understand how much configuration can matter. Thanks for making and sharing this content with us.
thanks!
Please make PHP8.3 (FPM and Swoole) vs NodeJS comparison. This is what most of web uses now.
soon
Thank you for this video and I hope you can do video of optimized Django,with ninja and celery or other optimization. My best regards
thanks! yes in the future I'll improve it
Why don't you add dashboards to the source code? Can you solve it? It might be interesting, maybe for reusing your tests
i have it here - github.com/antonputra/tutorials/tree/main/lessons/135
i'm planing to create another tutorial on monitoring soon
Really cool videos, may I know the program you use for video animations?
thanks! sure adobe suite
Thank you:) I was going to ask for Deno and Bun versions, looks like I am not the only one.
yes it is next
Ever going to see Bun , Deno vs something ?
yes, it's next for sure: deno vs. node.js vs bun. i just need to fix the mistakes before moving on to the next one
I love Anton! Can you also do these same tests using a k8s ARM architecture? please
i did one in the past with graviton, and i'll definitely refresh it soon
Could you compare cloudflare workers with hono vs go aws lambda?
ok, i'll see what i can do
Round 3 -> Nodejs(fastify) vs go
Yeah lets use Go Fiber so that these javascript devs get triggered again hahha.
next, i'll do deno vs. node.js vs bun, then take the fastest and compare it with go 😊
Much better!
Thank you very much for adjusting your setup
always trying to fix my mistakes
This had me wondering what would be the theoretical max limit a language can handle if given higher specs.
well it depends how many threads they create and in general adapt to multi core processors but i'm sure there is a limit
Would love a video on how to do such benchmark with those graphs
i'll do it in the near future
great vid! how you pronounce availability is funny tho lol
thanks :)
PHP vs Python vs Node vs Go
ok noted!
Lots of javascript devs got triggered in your last video hahahaha
Haha exactly
True. Yet JS due to it's availability and 0 learning curve - makes everyone think they're pro in JS. That's why 90% of publicly available of JS is total crap. So JS has it's niche where it excels. But people will still multiply shit with it
@@AlexanderMoon Golang is so much easier to learn and use from get-go than Typescript, Node ecosystem alone probably takes couple years to learn and is required to do any real job. Go is a wonderful language to make things fast and easy, cut corners and do relatively good job. But anything you have time to think about, Go is one of the worst languages even when compared to Node/Typescript, with poorly written type system, weird error handling and worst of all, - limited support for main paradigms, - OOP and FP.
It feels like golang has weirdly good publicity. Despite only universal advantage being its simplicity.
@@commonfolk663 disagree. learning a language is not same as learning an ecosystem. Go is way more complex than JS. JS has barely no types bypassing aspects such as typesafety, mem allocations, immutability, concurrency whatsoever. So no, JS learning curve is incomparably smaller than Go's.
No one likes express.js performance. That's a fact.
the number of triggered JS people here is quite funny. If we constantly say he didn't do it right, I can say use go fiber and literally destroy JS once and for all.
Go fiber goes brrrrtt
@@spicynoodle7419 indeed, though I prefer the libraries built on stdlib as they're more than fast enough and have better compatibility. But if you need raw speed fiber is awesome.
@@spicynoodle7419 You should see how crazy Fiber-Prefork is in multicore systems.
I only have experience with gin. I know fiber is superior, but is the syntax similar? I want to migrate if it is
😂
For those who knows your Chanel very well, it's useless to blur the screen on the beginning of the benchmark videos 😂😂😂 we all know that the blue line is for go lang, what surprises me most, is node not being a green line 😂😂😂😂😂
Very nice explanation about requests and limits
thank you!
Now do Node vs Rust so we can really blow them out the water xD
Rust will obviously be even better, since Anton already did a similar test of Rust vs Go, and Rust was decisively better than Go. But, as someone already mentioned above, for a very large number of applications node is good enough, i.e. you don't get enough runtime savings from using a compiled, statically typed language that generates more efficient binaries to justify the higher development time costs. Node has a very well carved out niche in which it is pretty much the best choice, and unlikely to be replaced by anything in the foreseeable future.
i'll do a comparison with rust, but probably with bun
@@AntonPutra The reason I make the comment is that I think Node (and Java, and C#) are in the realm of companies that are looking at Rust and C++ (because C23) because it has a potential "very large" benefit that may be too big to ignore in light of the fact where the trade-off used to be much greater before Rust and in older versions of C++ that were not modern enough for a modern workforce and a modern codebase and architecture, but now is much more relevant.
First! Thanks for making these btw
my pleasure!
Amazing, as usual. Thank you!
thanks!😊
no one mentioned ruby or ruby on rails
😊
Please compare bun vs go va rust
close :) next Deno vs. Node.js vs Bun
wait bun vs go vs rust? huh?
@@skuwamy bun is written in rust
Thanks for the follow up. I think this really shows that JS is pretty good. Considering how easy it is to write and can still compete with something like go or Java is amazing
yes it pretty good, just be careful how you deploy it
Php vs php concurrent vs go please
soon
elixir would be interesting 🙂
i'll do it in near future
this is so useful! thank you!
my pleasure!
now do golang std lib vs bun std lib
i'm considering this, but next is deno vs. node.js vs bun
do go fiber vs php swoole
i'll do php soon
hi. what about python and php?
will do soon
Bun(Hono) vs Go...... Please
Go is faster. That's about it
deno vs. node.js vs bun is next, then i'll compare it with go
@@roccociccone597 its not that its faster......the question is how faster....if the difference is small then there is no need to learn Go or new technology and stick to JS and optimise in other parts of the application
Anton, why is there CPU throttling when the CPU usage on Go: default and Go are not at the 1 CPU limit? Is the CPU plot not showing iowait or iosteal? Does `cpuset` do anything in a k8s env? When using raw hardware, using cpuset to avoid cross-socket traffic helps performance a great deal. If you're capping at 1cpu, then one may as well pin it to that core so it doesn't have to worry about floating to another core or socket.
Thanks for the diligent videos!
I'll double check
Please do a video on SurrealDB vs PostgreSQL
Let's see how Dart (with Shelf) competes
Please specify versions and non-default settings and steps when you can. Otherwise your comparisons are ill-defined...
sorry i forgot, just updated readme - Node js (22.9) vs Go (1.23.1) performance comparison.
maybe one day, we cpp devs get a rest api test to once and for all decide which is the “fastest”.
actix or drogon?
p.s. i tried rust, it’s ok. i hate fighting with the compiler. i’d rather shoot my self in the foot
yes i'll do it, but i promised some more js, Deno vs. Node.js vs Bun next
Where I can find a client code/config? Thanks!!
deno vs go please
ok, testing bun right now
Can you compare the GoLang and Scala web framworks like ZIO Http?
yes i'll do scala in the future
I'm no benchmark pro but for it to be fair shouldn't you enable Worker Threads in Node?
if you want to deploy it on standalone server or VM you would create as many workers as you have cores but in K8s just scale horizontaly
Thanks for doing the part2 ❤
Never thought it would be this close
Perfect..
thanks!
I am interested in your explanation on this video. What animation did you use for your video?
adobe suite
i try to replicate your grafana histogram but i failed, do you mind to share the json of it?
sure - github.com/antonputra/tutorials/tree/main/lessons/135
Funny to observe people still think Bun is really Node killer and really faster & better 😁
( one more killer, oh no 😁)
Like, uWebSocket used by Bun faster than Rust Actix Web, so the comparison with NodeJS related on req/res for sure will be faster lol,
but at the same time checking if string starts with some specific substring was ~14 times slower vs NodeJS.
Checkmate.
Just take a look at the amount of Bun devs/community and think how much time do they need to fix all the problems/bugs they have, to deliver everything NodeJS has today.
I guess lots.
testing bun right now
Insane!
yeah i know 😊
NodeJS still got shit on only with 1 CPU even though Go uses all CPUs by default. JavaScript kiddies crying.
ironic you're shitting on nodejs with that username
no, actually, if you allow go to use the default settings and utilize all available CPUs, it is slower.. to improve go, you need to limit the number of threads to match the limit given in the settings.
Please do a node js vs rust
He did a comparison of Rust and Go, similar to this one, after he got feedback on an initial version. Rust came out on top of Go both times in absolutely every metric. Not by an astronomic amount, but, IIRC, by somewhat more than Go is better than node in this comparison. Which translates to Rust being better than node by an even larger margin than Go is.
yeah, in the future, but probably not node. instead, deno or bun vs rust
Go test with thread limit golang
node vs go single thread
node cluster vs go
thanks, maybe i'll do it in the future
can we get laravel benchmark?
yes a maybe one or more for js and then php
@@AntonPutra thank you
To be fair, Node.js looks very decent, given that Go is compiled
thats not even the optimized version of Go hahahaha.
it does
PHP vs Node or Go :)
compare two technologies is really hard because you need to understand deeply how they work. you did better now going more deeper how nodejs works and it's fair to say that go has a wonderful resources management
bro is javascript one of the easiest language to learn lol.
he's not talking about the language, he's referring to the underlying runtime and architectural considerations @@skuwamy
@@skuwamy you just need to learn the sintaxe to create scalable application, understood
@@elvispalaceit’s not about syntax
@@EdwinMartin lol, I think he is being sarcastic 😅 Wait…?
👋What should I test next???
👉 Previous Node.js vs Go Benchmark: ruclips.net/video/ZslbMp_T90k/видео.html
👉 [Playlist] New Benchmarks: ruclips.net/p/PLiMWaCMwGJXmcDLvMQeORJ-j_jayKaLVn&si=p-UOaVM_6_SFx52H
please do, node vs php vs python since they kind of serve similar purpose
c# vs java
Test FastApi, it would be very interesting to see ;)
i would like to see more spring boot
@@AntonPutra fastify with pm2 (load balancer with 3 cores) vs go std.
the explanation of milicores kind of ... looped? it felt like it was explaining the same concept 3 different ways
well, maybe i tried to give as many examples as possible
@@AntonPutra true :D and you should never listen to a single youtube commenter :D but just in case you get that feedback from multiple sources, that might be something to improve.
This far, its just "at least one person thinks this could have more concise" :D
So I was right saying it was cause it's single threaded.
Ps you tried so hard to make go look good enough compared with js. 🙂
I appreciate what you are doing, it's super cool content!
Being a java dev I'd really like to see how best of each language setups compare. I mean like eg combining best go, rust, js, java for instance.
One more time - it’s super cool what you’re doing!
thanks 🙂
Thank you.
fastapi vs go
Nice man, could you please also create .NET vs Java benchmark.
sure in the future
@@AntonPutra appreciate
Please find something that beats Go!
rust and probably bun
Are you going to test nodejs with fastify (with pm2 load balancer with max 3 cores config?) vs go?
well maybe i'll do fastify, next Deno vs. Node.js vs Bun
@@AntonPutraNice! Would love to see how fastify performs with load balancer vs go std.
Which nodejs version do u use?
just updated the video description - node.js (22.9) vs go (1.23.1) performance comparison
You should try go vs bun frr
soon, next Deno vs. Node.js vs Bun
hydrogen b0mb 💣 vs coughing baby 👶🗣
Lmao 🤣
Mind elaborating on that?
🤷
Conclusion from part 2: Node Js is not bad at all just not many DEVs know how to work with it and they jump to GO for out of box solution. Then they brag about it.
true
Another reason to not use NodeJs. U just will not understand wtf happens with kube+node and must waste your time to understand it
He explained in the video wat happens?
We use nodejs in production but use the cluster module in addition we make lots of v8 optimizations when using workers. NodeJS gets a bad rep cause alot of noobs that don't know what they are doing
@@perc-ai Would be nice if you write an article about that (or make another video 🙂)
agree, just let devops handle it 😊
This is pointless since author does not know how to write multithreaded Node.js. There are two possibilities to transfer data to a worker without serialization/deserialization: through typed arrays and by porting objects from one V8 heap to another, which is also part of the threads API.
Exactly what I was thinking I told him last video to make another node video cause he did not do it correctly plus cluster module
why bother with all this rubbish when you can just use Go and get literally all of this performance without any headaches like that. The way people try to get JS to do stuff it wasn't intended for is funny.
@@roccociccone597 Again Go is a good alternative when load is CPU heavy but if we are talking about IO then NodeJS is just as good...
@@roccociccone597 you're right! idk how Node.js is so popular while it must not be because of crazy flaws
i don't, but i know how to run it and am accepting PRs - github.com/antonputra/tutorials/tree/main/lessons/211