svenkatreddy / puppeteer-loadtest

load test puppeteer (Headless Chrome API) script using node
Apache License 2.0
119 stars 21 forks source link

How many concurrent puppeteer threads could be loaded? #80

Closed Jarrodsz closed 1 year ago

Jarrodsz commented 2 years ago

Great project thank to all involved to making this possible. I plan to use this for stress testing our application and load balancer.

If i understand correctly the number of threads is the pool where workers are consuming from. 500 threads and 10.000 puppeteer sessions would load the 10.000 inside the pool to a max of 500 untill for each puppeteer session to be finished untill the 10.000 sessions are processsed.

Running on a macbook pro max 2021 with 32gb what would be the max number of puppeteer sessions this project could handle? Im on glassfiber fast.

1 problem though is i probably will be using thor for else my isp will give Me trouble when im doing so many concurrent puppeteer sessions since that could be perhaps considered a ddos. Not sure on that but dont want to get into any problems.

We have an api service that in peak gets 100.000 request a minute so in ideal world i would like to run stress test batches with very high number up-to the 100.000 pro minute.

Any thoughts real world experience regarding above?

Kind regards

svenkatreddy commented 2 years ago

Thanks for the kind words.

Although there are no direct tests done on puppeteer-loadtest, This discussion should give an idea https://stackoverflow.com/questions/9275654/how-many-child-processes-can-a-node-js-cluster-spawn-on-a-64bit-wintel-pc

There is no real magic here other than what ability node.js provides with child processes.