12:00新しい技術への挑戦は、企業ごとのさまざまな制約によって、容易なものではない。スマホのゲーム業界で名をはせるコロプラでさえ、数年前までは開発効率を重視した枯れたテクノロジーを利用していたという。第1エンジニアリング部長の廣本洋一氏が語った。ツムツムランド」「バクレツモンスター」など数々のヒットゲームアプリを輩出しているコロプラ。エンジニアが所属する「エンジニアリング本部」、デザイナーが所属する「アート本部」に分かれており、インフラエンジニアはこれらとは別の組織に在籍しているという。この中で廣本氏がマネジメントしているのは、エンジニアリング本部のサーバーサイドだ。「2年ほど前に今の機能別組織に変更しました。事業部制の頃は、各事業にエンジニアやデザイナーがひもづいて所属していましたが、ノウハウの共有が薄くなったり、人の流動性が下がってきたりしたからです」(廣本氏)コロプラにはエンジニアリングの観点で3つの特徴があるという。1つ目は「これまでに出したものと近いゲームはあまり開発しない」。いろいろなユーザーに遊んでもらいたい思いがあり、似たゲームの開発はあえて行わない。エンジニアからすれば、ゲームのコア部分に関して使い回せるものが少ない分、大変さがある。2つ目は「基本的にサーバーのメンテナンスはしない」。メンテナンスをすれば少なからずユーザーが確実に減る事実に基づき、できる限りメンテナンスはしないといったポリシーがある。3つ目は「他のプラットフォームに移行できなくなるようなマネージドサービスは使わない」。これまで、マネージドサービスではチューニングポイントが限られてしまうため、使わないという選択をしてきた。そんなコロプラの新しい技術について、何から何へ移行したのか、それぞれメリットとデメリットを挙げながら見ていった。FrameworkからLaravelへの移行メリット:ライブラリの最適化・不要機能の棚卸し・トレンドな機能が利用できる。デメリット:フレームワークを並行することになり、過去タイトルとの二重管理が始まってしまった。Spannerへの移行メリット:スケールアウトorダウン時のオペレーションが簡単で、大幅にオペレーションコストを削減できた。基本的にメンテナンスがないので高い可用性を得ることができた。デメリット:Spannerを採用した事例が少ないので、ノウハウがない。ローカルエミュレータがないため、ローカル開発もインターネット越しでSpannerに接続する必要があり、遅くなる。Spannerは無料枠がないのでローカル開発もお金がかかる。これから改善していくと思うが、負荷が上がったときの細かいメトリクスがあまり見られないものも多く、問題発生時の理由がわかりにくい。Engine(+Spinnaker)への移行メリット:オートヒール/オートスケールという非常に便利な機能がある。アプリケーションサーバーの増減のオペレーションが楽。デメリット:もともとSCPでファイルを転送していたものが、イメージのコピーという形に変わるので、デプロイにかかる時間が増加した。新技術で動いているのは直近でリリースされた2タイトルのみであり、新技術導入以前のタイトルは元の構成で動いているというが、新技術になってからの構成は以下の図の通りだ。圧縮・解凍UNIX基本講座@CodeZine『CodeZine(コードジン)』の公式アカウントです。【NEW】デブスト2019デブサミ2019福岡・関西デブサミ2019夏デブスト関西デブサミ2019×ログインEメールパスワード※旧SEメンバーシップ会員の方は、同じ登録情報(Eメール&パスワード)でログインいただけます。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。