多重構造になっていて重たいクエリの処理
現在web上でマンガを作るサービスを作っていて、データ構造が階層的になっています。
novel
-chapter (コマの集合
--entry (一つのコマのモデル
---entryBaloon (吹き出しのモデル
---entryCharacter (画像のモデル
という風な階層構造をbackbone.jsで作っていて、データベースもそれに準じた形で作っているのですが、entryが増えると、サーバからnovel全体をとってこようとした時のパフォーマンスが非常に悪いです。
閲覧だけならキャッシュをとっておけばいいのですが、backboneを使って編集内容を反映しているので、その度にキャッシュをアップデートする訳にもいきません。
現状はトップで表示するものだけキャッシュを作っています。
どうするのが適切でしょうか?
(ソースコードは https://github.com/taizan/ecomaki )