As you point out, using server load average isn't ideal, but is the easiest way to prevent the whole server from spiraling down during high traffic periods; it's better to randomly drop some connections than trying to serve them all.

The real bottleneck is the database - a separate database server, which is planned, will significantly reduce the "server busy" messages.

Ron