ランニング部部長の元木です。Marketingというチームでサーバーサイドエンジニアもやっております。CloudSearch(以下「CloudSearch」)を利用して商品の検索機能を提供しております。インデックスを更新する処理を、どのようにバッチからワーカーに置き換えたのかをご紹介させていただきます。2019」の9日目の記事です。バッチの何が問題だったのか商品データは、ショップオーナーさんや購入者のアクションによって刻々と変化していきます。インデックスを更新していくこととなります。バッチプログラムを用いて、非同期でこの処理を実行しておりました。バッチ処理にはインデクシングが必要な商品数は日々増えていくが、処理をスケールできないDBへの負荷が高いという問題がありました。インデックスを更新するワーカーが導入されておりましたが、一部のアクション(商品の登録・更新・削除)しかカバーしておりませんでした。以下が、切り替え前のシステム構成です。話した結果、これを以下のような構成に変更することが決まりました。(以下「SNS」)を配置する。アプリ側、WEB側ともに、バッチをワーカーに完全に置き換える以下が、目標とするシステム構成です。対する理解度は、こんな感じでした。次からは、どのような段取りでシステム構成を切り替えていったのかをご説明します。