Benchmarking Go vs. Node vs. Elixir
stressgrid.com
Benchmarking Go vs. Node vs. Elixir
1–10 of 33 posts
Re: Benchmarking Go vs. Node vs. Elixir
#2Re: Benchmarking Go vs. Node vs. Elixir
#3Not sure what `body` not having `var` in front (so it gets put on global) would do either.
Re: Benchmarking Go vs. Node vs. Elixir
#4Re: Benchmarking Go vs. Node vs. Elixir
#5Re: Benchmarking Go vs. Node vs. Elixir
#6Tldr?
Re: Benchmarking Go vs. Node vs. Elixir
#7Not sure but it kind of seems like they are running only one (single-threaded) Node process on multicore CPUs.
It is also interesting to see that only one Node process can barely serve 10k connections.
---- After I check the source at [0]. They use a simple http module to serve the requests while they use `http.ListenAndServe` which spawns go routines, hence more CPU utilization.
Re: Benchmarking Go vs. Node vs. Elixir
#8Not sure but it kind of seems like they are running only one (single-threaded) Node process on multicore CPUs.
This immediately comes into my mind when I see the charts. It is also interesting to see that only one Node process can barely serve 10k connections. ---- After I check the source at [0]. They use a simple http module to serve the requests while they use `http.ListenAndServe` which spawns go routines, hence more CPU utilization. [0] https://gitlab.com/stressgrid/dummies
What would be the most performant way to serve HTTP in Go?
Re: Benchmarking Go vs. Node vs. Elixir
#9Surprising that BEAM is such a CPU hog!
Re: Benchmarking Go vs. Node vs. Elixir
#10Earlier quoted context omitted.
This immediately comes into my mind when I see the charts. It is also interesting to see that only one Node process can barely serve 10k connections. ---- After I check the source at [0]. They use a simple http module to serve the requests while they use `http.ListenAndServe` which spawns go routines, hence more CPU utilization. [0] https://gitlab.com/stressgrid/dummies
Author here. Planning to run the same test using cluster module with one worker per CPU. What would be the most performant way to serve HTTP in Go?
As for the structure of it you would like have everything split out into goroutines with a worker pool of goroutines ready to ferry the data from request to backend and back to client.