Bitcoind Keypool Best Practices For Web App
Consider using hierarchical BIP32 wallets. You can generate the addresses with various tools (e.g. sx) or natively in your web app. Then you can import the keys to your bitcoind node in order to manage them. If needed, you can have multiple bitcoind nodes and load-balance the keys among them (e.g. having X customers per node).

The great advantage of BIP32 wallets is that you only need to perform the backup once - at the beginning, since all the keys are derived from the initial seed.