Node vs Java/PHP vs Go model of concurrency

·

1 min read

https://www.toptal.com/back-end/server-side-io-performance-node-php-java-go

Summary:

  • Node: can handle many concurrent I/O bound requests, but only has 1 thread and so cannot handle CPU-intensive requests well

  • PHP: spawn 1 process per request, cannot scale well with many concurrent I/O bound requests, OK with CPU-intensive requests

  • Java: spawn 1 thread per request, scale OK with many concurrent I/O bound requests and OK with CPU-intensive requests

  • Go: Spawn 1 goroutine per request, can handle many concurrent I/O bound requests and many CPU-intensive requests

Ref: https://www.youtube.com/watch?v=vO-_noflMzY&ab_channel=ThePrimeTime