max_connections set to 500, Max_used_connections never go over 151
Tell us more about the load test.  What probably happened...
The test succeeded in launching 151 threads at the 'same' time.  Those threads then fought with each other for CPU, disk, network, etc.  They were each given &quot;equal&quot; access to everything.
What does that lead to?  Well, imagine letting 151 customers into a small grocery store.  Each would be pushing there cart but bumping into other carts.  It would take 'forever' to finish one aisle and get to the next.
The net effect is everyone takes an abnormally long time to finish the task.  Have you learned anything about the load?  No.  The grocery store was overloaded.
Run the load test again, but with the &quot;max threads&quot; set to something like twice the number of CPUs.
Is it possible to have 500 connections?  Yes.  But only if they are not doing what the load test is designed to do:  pound on the database and do nothing else.
That is not realistic.  A web page, for example, will grab some data, build some HTML, wait for the user to input something, etc.  That is, a realistic load involves more than just hitting the database.
What was the goal of your load test?  Maybe we can help you get some real news instead of this fake news.