I've also noticed that the bitcoind JSON-RPC response times do seem a bit high, especially if running on modest hardware. But I've not investigated further.
I wonder how large scale bitcoin sites (e.g. satoshidice, mtgox) perform operations such as checking for transactions and making transactions - do they use:
- the standard bitcoind JSON-RPC interface
- a lightly patched bitcoind
- a heavily customised bitcoind
- a proprietary client that speaks the bitcoin protocol
- an application that bypasses bitcoind and pokes around in the bitcoind database directly
- a mixture of the above!