ITmedia NEWS > 企業・業界動向 >

「ソシャゲの周年イベント当日にアクセス障害」──2年連続で苦渋なめた「ガルパ」、バックエンドの“6周年”対策CEDEC 2022(2/3 ページ)

» 2022年08月30日 13時30分 公開
[吉川大貴ITmedia]

3周年の反省踏まえた4周年、それでも障害発生した意外な原因

 3周年当時の失敗を受け、4周年を迎えるときは一連の問題に対策してイベント開催に挑んだ。例えばシステムを動かす前に必要なデータを圧縮することでサーバに掛かる負荷を減らした他、CDNのリクエスト数の上限も拡大した。

 当時講じた対策は他にもある。まず、ゲーム内でユーザーがアイテムを受け取る「プレゼントBOX」について、履歴を削除する操作を一時的に無効化した。サーバへの負荷が大きく、障害の原因になる可能性があったという。

 負荷分散を行えるAWSのロードバランサー「Elastic Load Balancing」も使用した。通常は負荷の上昇に合わせて段階的に負荷分散していくところ、事前にAWSと相談し、あらかじめ許容量を上げて挑んだ。

 しかし、4周年当日も、3周年当日と同様、アクセス障害が発生。緊急メンテナンスを実施せざるを得なくなった。原因は「想定外の見落とし」だったと常山さん。対策とは関係のないところに、問題が隠れていたという。

 Craft Eggが見落としていた問題、それは過去に実施した不具合修正のミスだ。バンドリのiOS版では過去に、ゲーム向けソーシャル機能「Game Center」が原因で、データの引継ぎができない不具合があった。

 この不具合を修正した時に、データベースから特定の情報を検索する「インデックス」を設定し忘れており、結果としてデータを取り出す処理に問題が起きていたという。当時の障害は、このインデックスを設定し直すことで解決した。

問題は負荷試験に 2度の障害で分かった反省点

 常山さんは2度の障害について、根本的な原因は負荷試験の体制にあったと振り返る。そもそも3周年の時点では、開発チームに入ったばかりの人が多く、AWSでの負荷試験の経験者がいなかった。負荷試験の環境も整っていなかったという。その上で、ゲームの開発も並行して進めなければならず「頑張って進めることになった状態だった」(常山さん)。

photo Craft Eggの常山貴行さん

 結果として、負荷試験自体はできたものの、本番を想定した負荷を再現できず、アクセス障害につながった分析している。

 4周年の時点では「端末引継ぎというノーマークだったところにボトルネックがあった。ガルパはリズムゲームなので、iPadやiPhoneなど、端末を切り替えて遊ぶユーザーが想定より多かった。全体的に負荷試験を実施しないとダメだと分かった」(常山さん)

 一方、これまでの負荷試験は、環境を構築するのにコストや時間がかかり、頻繁な実施が難しかった。「定期的に実施するには、もっと短時間で構築できるやり方を模索しなくてはならなかった」(常山さん)

Copyright © ITmedia, Inc. All Rights Reserved.