なまえは まだ ない

思いついたことをアウトプットします

2025-01-01から1ヶ月間の記事一覧

ISUCON14延長戦の記録⑨ N+1問題の解消とクロージング

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回は2つめの通知エンドポイントレスポンスをキャッシュし、ついに本戦当時の6位相当までスコアを伸ばすことができました。 今回はユーザーの通知エンドポイントの中で気…

ISUCON14延長戦の記録⑧ インメモリキャッシュに手を出す(その2)

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回は通知エンドポイントのひとつである、椅子の通知エンドポイントを高速化しました。 今回はもうひとつの通知エンドポイントにインメモリキャッシュを導入します。 なお…

ISUCON14延長戦の記録⑦ インメモリキャッシュに手を出す

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回は細かいチューニングをしつつ、MySQLサーバーを別インスタンスに切り出しました。スコアは本戦当時の上位入賞に食い込める28,000点まで伸びています。 またしてもやる…

ISUCON14延長戦の記録⑥ MySQLサーバーを別インスタンスにする

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回はISUCON14の目玉のひとつ(?)であるマッチングアルゴリズムの改善をしました。 これまでの改善も含め、スコアを一気に17,000点まで伸ばすことができました。 なお、…

ISUCON14延長戦の記録⑤ マッチングアルゴリズムを改善する

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回は椅子の総移動距離を管理するカラムを追加することにより、非常に重いクエリを軽量化しました。が、スコアはまだまだ伸びません。 なお、最終的なコードは以下のリポ…

ISUCON14延長戦の記録④ 激重の集計クエリを軽量化する

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回はN+1どころじゃない問題を解消するために、椅子の空き状況と最新位置情報をデータベースで管理できるようにしました。 エンドポイント単体はとても軽量になりましたが…

ISUCON14延長戦の記録③ N+1どころじゃない問題の改善

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回はスロークエリログから必要なインデックスを割り出して追加しました。スコアは3,500程度まで伸びています。 ここからアプリケーションコードに手を入れていきます。 …

ISUCON14延長戦の記録② インデックスの追加

ISUCON14の延長戦をやってます 以下の記事の続きです。 furusax0621.hatenablog.com 前回はチューニングの前段階として、競技用環境の整備をしました。 ベンチマーカーを回して得た結果を元に、サーバーチューニングをしていきます。 なお、最終的なコードは…

ISUCON14延長戦の記録① 競技環境の構築

2024.01.10 追記 予定していた連載(?)が終わったので、元記事であるここにインデックスを作成しておくことにします。②以降の記事は以下のリンクから飛ぶことができます。 ISUCON14延長戦の記録② インデックスの追加 - なまえは まだ ない ISUCON14延長戦…