Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
海外展開と負荷試験
Search
gree_tech
PRO
November 11, 2021
Technology
1
320
海外展開と負荷試験
GREE Tech Conference 2021 で発表された資料です。
https://techcon.gree.jp/2021/session/Session-6
gree_tech
PRO
November 11, 2021
Tweet
Share
More Decks by gree_tech
See All by gree_tech
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
130
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
90
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
94
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
78
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
88
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
110
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
110
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
140
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
300
Other Decks in Technology
See All in Technology
Taming you application's environments
salaboy
0
180
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
570
隣接領域をBeyondするFinatextのエンジニア組織設計 / beyond-engineering-areas
stajima
1
270
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
地理情報データをデータベースに格納しよう~ GPUを活用した爆速データベース PG-Stromの紹介 ~
sakaik
1
150
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
120
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
140
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
270
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Designing the Hi-DPI Web
ddemaree
280
34k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Happy Clients
brianwarren
98
6.7k
Designing for humans not robots
tammielis
250
25k
Embracing the Ebb and Flow
colly
84
4.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Practical Orchestrator
shlominoach
186
10k
KATA
mclloyd
29
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
海外展開と負荷試験 グリーエンターテインメント株式会社 加藤 雅
グリーエンターテインメント株式会社 エンジニア部 所属 役職:エンジニアマネージャー 2017年 ファンプレックス株式会社入社 サーバーエンジニアとして、いくつかのネイティブアプリの開発に参加 チーフエンジニアとして、エンジニアのスケジュール調整や育成も経験 現在は運営タイトルのエンジニアマネージャーとして エンジニアのマネジメントやアサイン調整を担当
自己紹介 加藤 雅(かとう まさし)
アプリ海外展開事例の紹介
プリンセスコネクト!Re:Dive の英語版
本日のアジェンダ • 開発内容やインフラ構成の紹介 • 負荷試験の概要 • 負荷試験で発生した事例の紹介 • リリース後の結果 •
まとめ
プリンセスコネクト!Re:Dive英語版の 開発体制およびインフラ構成
IPホルダー パブリッシャー ディベロッパー 3社共同運営
• クラウドサービス ◦ Amazon Web Services • インフラ構成 ◦ LAMP(Linux,
Apache, MySQL, PHP) • 分析ツール ◦ Google Cloud BigQuery インフラ構成
インフラ構成
• タイムマシン運営 運営形式
Q1.プリンセスコネクト!Re:Dive 英語版の 開発期間に関して
Q1.開発期間はどのくらいでしょう? • 3ヶ月 • 6ヶ月 • 9ヶ月 • 12ヶ月
開発期間はどのくらいでし ょう? ⓘ Start presenting to display the poll results
on this slide.
Q1.開発期間はどのくらいでしょう? • 3ヶ月 • 6ヶ月 • 9ヶ月 • 12ヶ月
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・開発環境構築 ・各種最適化
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・本番環境構築 ・負荷試験 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・本番環境構築 ・負荷試験 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・限定地域にリリース
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・本番環境構築 ・負荷試験 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・全世界リリース! ・限定地域にリリース
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 グローバル
ローンチ ・全世界リリース! α版開発期間 β版開発期間 RC版開発期間 ソフトローンチ • 日本国内でのリリースとは異なるアクセス状況が見込まれる • グローバルに最適化した本番環境の準備が重要になる
開発期間6ヶ月(2020年) 6月 7月 8月 9月 10月 11月 12月 1月 α版開発期間
β版開発期間 RC版開発期間 ソフトローンチ グローバル ローンチ ・本番環境構築 ・負荷試験 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・翻訳対応 ・LQA ・開発環境構築 ・各種最適化 ・全世界リリース! ・限定地域にリリース
プリンセスコネクト!Re:Dive 英語版の 負荷試験の概要
• 最適化した本番インフラ構成の動作検証 • インフラ構成のボトルネックの洗い出し • 分析ツールや監視ツールの機能テスト 負荷試験を実施する理由
• 使用したツール ◦ JMeter • 選定理由 ◦ Webに情報が多い ◦ セットアップが簡単
◦ 他プロダクトでの実績あり 負荷試験の準備
負荷試験のシナリオ • シナリオとは ◦ ある操作や処理の一連の流れ ◦ チュートリアルなどの想定されるリクエストフロー
負荷試験のシナリオ • シナリオとは ◦ ある操作や処理の一連の流れ ◦ チュートリアルなどの想定されるリクエストフロー • どの程度の負荷が掛かるかの事前確認 •
インフラ構成のボトルネックを洗い出す
負荷試験の実行シナリオ • リセマラフロー ◦ チュートリアル完了までの各API • クエスト周回 ◦ いくつかのクエストを周回実行する •
アリーナの対戦相手更新 ◦ 対戦相手更新を実行する
プリンセスコネクト!Re:Dive 英語版の 負荷試験で発生した事例の紹介
負荷試験で発生した事例の紹介 • 負荷試験実施時のlocalhostのmemcached挙動 • localhostで使用していたmemcachedが高負荷の数値を示す • インフラ構成時のPIDファイル設定ミスにより、キャッシュデータが 正しく生成されていなかった • 挙動的には正常に動いているように見え、負荷試験実施まで検知できず
負荷試験で発生した事例の紹介 • 負荷試験実施時のlocalhostのmemcached挙動 • localhostで使用していたmemcachedが高負荷の数値を示す • インフラ構成時のPIDファイル設定ミスにより、キャッシュデータが 正しく生成されていなかった • 挙動的には正常に動いているように見え、負荷試験実施まで検知できず
• localhostの設定を見直し、データが正しく生成されることを確認
負荷試験で発生した事例の紹介 • シナリオ実行サーバーの調整 • シナリオを実行しても、サーバーに負荷をうまい具合にかけられない • シナリオ実行サーバーのメモリ不足やjavaのGC影響により、高負荷が掛からない状態
負荷試験で発生した事例の紹介 • シナリオ実行サーバーの調整 • シナリオを実行しても、サーバーに負荷をうまい具合にかけられない • シナリオ実行サーバーのメモリ不足やjavaのGC影響により、高負荷が掛からない状態 • シナリオ実行サーバーのスペックアップ(c4.2xlarge =>
m4.2xlarge) • javaのGC周りの設定見直し • シナリオ実行サーバー側もCPUなどをモニタリングできるように対応
負荷試験で発生した事例の紹介 • 負荷試験中のサーバー費用に関して • 試験中は、リリース想定の台数やインスタンスクラスで稼働させる • 原因調査や土日などで、試験を実施していない間は費用かからないように調整が必要
負荷試験で発生した事例の紹介 • 負荷試験中のサーバー費用に関して • 試験中は、リリース想定の台数やインスタンスクラスで稼働させる • 原因調査や土日などで、試験を実施していない間は費用かからないように調整が必要 • 試験期間の中でも、実施期間/調査期間などスケジュール割りを行っておく
プリンセスコネクト!Re:Dive 英語版の 負荷試験を行ったことで得たこと
負荷試験を行ったことで得たこと • ウェブサーバーの台数の最適化 ◦ 初期に想定していた台数の1/4の台数で調整
負荷試験を行ったことで得たこと • ウェブサーバーの台数の最適化 ◦ 初期に想定していた台数の1/4の台数で調整 • サーバーの潜在能力の確認 ◦ 理論値でどの程度の接続数まで耐えられるか
プリンセスコネクト!Re:Dive 英語版の リリース後の結果
リリース後の結果 インフラ障害無く 無事リリース!
リリース後の結果 • 約160ヶ国に配信 • リリース2ヶ月で200万DL達成!
Q2.プリンセスコネクト!Re:Dive 英語版の 運営初月のリソースダウンロード量
Q2.運営初月のリソースダウンロード量は何バイト? (CDNのダウンロード量) • 3GB • 3TB(3,000GB) • 3PB(3,000,000GB) • 3EB(3,000,000,000GB)
運営初月のリソースダウン ロード量は何バイト? ⓘ Start presenting to display the poll results
on this slide.
Q2.運営初月のリソースダウンロード量は何バイト? (CDNのダウンロード量) • 3GB • 3TB(3,000GB) • 3PB(3,000,000GB) • 3EB(3,000,000,000GB)
リリース後の結果 3.4ペタバイト(PB)
まとめ
• 負荷試験を行う大切さ まとめ
• 負荷試験を行う大切さ • 蓄積されてきた知見の重要性 まとめ
• 負荷試験を行う大切さ • 蓄積されてきた知見の重要性 • グローバル展開の可能性 まとめ
• 負荷試験を行う大切さ • 蓄積されてきた知見の重要性 • グローバル展開の可能性 まとめ グリーエンターテインメントHPの TECH BLOG
でも紹介しています! https://gree-entertainment.com/topics/3235/
この開発で得た知見を 今後の開発に活かし ゲーム市場を盛り上げていきたい!
53