Load test your backend -- not the 'actual' production backend but a copy with the same characteristics. That is, call your backend functions in an order and manner that's consistent users' actual usage, with as many simultaneous requests as you can. There are many products that can do this, one free one is JMeter [1].
This will help you figure out if you can scale your way out of the problem (i.e. throw more servers at it), or if it's fundamentally broken beyond saving.
[1] http://jmeter.apache.org/