こんにちは。『Technology of DeNA』編集部です。
2/9(月)に、渋谷ヒカリエのDeNA本社にて、 「第四回 DeNAゲーム開発勉強会」を行いました! そのレポートをダイジェストでお送りします!
こちらはゲームに特化してシリーズ化した勉強会で、 今回で4回目です。
前回は、500万ダウンロードを突破した、 『ファイナルファンタジー レコードキーパー(FFRK)』の クライアントサイドのネタを取り上げましたが、 今回はサーバサイドで使用される社内フレームワーク・ツールをテーマに講演を行いました。
※前回の講演内容はこちら
◎FFRKを支えるWebアプリケーションフレームワークの技術
@猫宮によるフレームワーク系の話です。 社内で開発されたGunyaSiFをベースに改良したフレームワークを用いた、 という話でした。
GunyaSiFは、2013年に開発された、Perl、Amon2をベースにした内製のフレームワークです。 これを引き継ぎ、時代の変化に合わせて進化させようとしたのが@猫宮です。 元々は現場のエンジニアが主導し、職人芸的に使用されていたケースが多かったのですが、 より汎用性を高める為に徹底して効率化を推進。 コードを徹底的にレビューし、省けるものは省きながらリファクタリングと修正を行いました。
さらに、FFRKリリース時の超高負荷に耐えうる仕様にする必要が。
MultiStoreをつくって複数のStore先を保持できるように拡張することで、 Masterの負荷が1/20になりました。 DNS Rersolverを入れ替えて、MyDNSへの負荷を大きく削減したりも。
結果、見事に、対応に成功しました! まとめると以下です。
◎Game BaaS Implemented by Ruby
次の講演は、サーバーサイドエンジニアの@tohae による Rubyによるゲームツールの開発の話です。
様々ある共通のソーシャルゲーム機能を再開発するのではなく、 SDKや管理画面等汎用化し提供することを目的とした、 ソーシャルゲーム向けの機能を追加したBaaS(Backend as a Serivice)です。
こちらを用いればサーバーの開発や運用が不要、というツールです。
このツールをRubyで開発した理由は、 「Perlが書けなかったから!」というもの、だったとのこと(笑)。
もちろん、テストのしやすさとか、Railsが便利、とか、いろいろありますが。 DeNAのインフラに求められる諸条件をクリアして稼働を開始し、 パフォーマンスも悪くない、とのこと。
質問も多く出て、盛り上がりました!
そして、最後はお約束の懇親会です! みなさんで乾杯し、盛り上がりました!!
また、第五回も予定しておりますので、 ご興味ある方は、ぜひ、お越しくださいませ!
最後まで読んでいただき、ありがとうございます!
この記事をシェアしていただける方はこちらからお願いします。