Closed
Description
Summary
Issueあった気がしたけど見当たらなかった
例えば1秒間に100回リアクションがつく場合リアクションレコードの挿入に加えて、100回ノートレコードの更新(=PostgreSQLでは実質的にノートテーブルの新規挿入&削除)が走ることになりかなり負荷が高い
そのためノートレコードごとにリアクション情報を非正規化して持つのをやめたいが、ノート取得するたびにリアクションを集計してくるのもかなり負荷が高いと思われるので、何かいい解決策を考える必要がある
例えばRedisにうまいことキャッシュできないかしら
案
- Redisにキャッシュして定期的にDBにベイクする(つまりRedis→DB)
- 懸念: 結局ベイクが重そう、実装が難しそう
- Redisにキャッシュしてキャッシュがある場合はそれを使い、ない場合はDBから集計+キャッシュ追加(つまりDB→Redis)
- 懸念: DBから集計が重そう
- 非正規化リアクション情報用DBを別に用意できるようにする