キャッシュという考えが抜けていた

APIで正常なアクセスの場合、わざわざ毎回DBに接続しているけど、アクセス時間をキャッシュ(メモリorファイル)して制限時間内かどうかそのキャッシュを見るようにすればよかった。

どんなときでも「キャッシュが使えないか」という考えを忘れないようにしよう。

更新したらキャッシュクリアして、新たにキャッシュセットする。
参照時は、キャッシュがあればそれを参照する。

・・・とはいえソーシャルアプリのような秒間数万アクセスとかでもない限りそこまでやっきになる必要はないのかもしれない。API等のアクセス過多になるケースの場合思いつくようにすること。