djangoのようなフレームワークは開発者の生産性を劇的に向上させてくれる。しかしそのためにパフォーマンスは犠牲にされる。djangoのORMなんか非常に便利だが、そのまま使っていると非効率なことがRDB層で起きる羽目になる。でもこれは殆んどのアプリケーション開発において賢いトレードオフだと思う。だって、作って公開してみなければそのアプリが最適化するに値するものかどうかは別らないでしょ。 という具合でとりあえず作ってみたサイトがめでたくトラクションを得るとパフォーマンスが問題になってくる。今作っているサイトは日2万ページビューぐらいでピーク時にアップアップ状態。同じページを作るのに毎回SQLからオブジェクトを作ってレンダリングしているんだから無理ない。ホスティングは月20ドルのVPS。趣味のサイトなので、これ以上の予算はない。そこでキャシュの出番だ。 サーバ構成はnginxの後ろにfast