Typically, most modern web servers can support many more than 150 connections. In fact, most web servers are still using default settings that were designed for hardware from 3 - 10 years ago. A little bit of tuning can go a long way towards avoiding problems.

If you've already tuned the settings and you're still getting this problem, then, well, it could just be that you have a very popular site and need to upgrade your hardware. :)

You may want to reduce the wait_timeout variable so mysql processes don't wait too long. You should setup the log_slow_queries in the mysqld section of my.cnf so you can record queries that take too long eg:

# close the connection after 15secs inactivity wait_timeout=15

# record queries which take longer than 3 secs. log_slow_queries=/var/log/mysqld.slow.log long_query_time=3