Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ゼロからサーバレスの先頭に追いつこう

 ゼロからサーバレスの先頭に追いつこう

TECH x GAME COLLEGE #2 の登壇資料です
https://techxgamecollege.connpass.com/event/95716/

Game Server Services をよろしくお願いします。
https://gs2.io/

Kazutomo Niwa

August 29, 2018
Tweet

More Decks by Kazutomo Niwa

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 丹⽻ ⼀智(にわ かずとも) Game Server Services 株式会社 代表取締役社⻑ CEO

    2006年 株式会社セガ⼊社 携帯電話向けゲームおよびサーバ開発業務に従事 2009年 任天堂株式会社⼊社 ニンテンドー3DSのOS/SDK開発や、 ゲームサーバの開発・運⽤業務に従事 2016年 Game Server Services 株式会社 設⽴ Game Server Services, Inc. https://gs2.io
  2. Game Server Services とは? 来⽉で設⽴2年というヒヨッコスタートアップですが、今年3⽉ に DeNA / KLab らから資⾦調達を実施。

    主な採⽤事例 Game Server Services, Inc. https://gs2.io 私、茄⼦で⾶びます(usaya株式会社) 講演数⽇前に Twitter でバズったりするも、 サーバレスアーキテクチャのおかげで無障害でサービス提供中
  3. AWS Lambda のイベントソース Game Server Services, Inc. https://gs2.io AWS Lambda

    を実⾏する起点となるイベントは S3, DynamoDB, Kinesis, AWS SDK
  4. AWS Lambda の使⽤例 Game Server Services, Inc. https://gs2.io S3に写真をアップロード ->

    関数で画像のメタデータを解析 -> メタデータをDynamoDB に格納 メタデータに含まれる位置情報などからトレンドを分析 -> トレンドデータをDynamoDBに格納
  5. ⽤語の定義 • この頃はまだアーキテクチャの名称が定まっていませんでした。 • 現在は Function as a Service(FaaS) と呼ばれていますが、当

    時は Dynamic Computing とも、Serverless Architecture/Computing とも呼ばれていました。 • ちなみに、現在は Dynamic Computing はなりを潜め、 Serverless Architecture はサーバの存在を感じさせないアーキ テクチャの総称として、FaaSだけでなくBaaSなども含むニュ アンスで使⽤されます。 Game Server Services, Inc. https://gs2.io
  6. 2015年6⽉ AWS Lambdaが東京に Game Server Services, Inc. https://gs2.io AWS Lambda

    が東京リージョンで利⽤出来るようになりました
  7. 2015年6⽉ AWS Lambdaが Java をサポート Game Server Services, Inc. https://gs2.io

    AWS Lambda で Java が利⽤出来るようになりました。
  8. 2015年7⽉ DynamoDB をイベントソースに指定出来るように Game Server Services, Inc. https://gs2.io AWS Lambda

    のイベントソースに DynamoDB の更新を指定出来るようになりました。 ※ re:invent であんな発表をしておきながら当初は出来なかったのです。
  9. 2015年7⽉ API Gateway発表 Game Server Services, Inc. https://gs2.io RESTful API

    を定義し、HTTP アクセス時に Lambda をトリガー出来るサービスが発表。
  10. 2015年9⽉ GS2の基礎研究開始 Game Server Services, Inc. https://gs2.io API Gateway +

    AWS Lambda を触っていて GS2 という事業に思い⾄り、 それを実現出来るかの基礎研究を開始
  11. 2015年10⽉ AWS IoT が previewリリース Game Server Services, Inc. https://gs2.io

    フルマネージドMQTTサーバである AWS IoT を preview リリース。
  12. 2016年12⽉ Lambda が Python 2.7 をサポート Game Server Services, Inc.

    https://gs2.io Lambda が Python2.7 をサポートしました。
  13. 2016年1⽉Lambda のイベントソースに Events が追加 Game Server Services, Inc. https://gs2.io Lambda

    を定期実⾏出来るように(当時は最短5分。現在は1分)
  14. 2016年2⽉ Google Cloud Functions αリリース Game Server Services, Inc. https://gs2.io

    Google が Google Cloud Functions を招待制でαリリースしました。(対応⾔語は node.js のみ)
  15. 2016年2⽉Lambda が VPC に対応 Game Server Services, Inc. https://gs2.io Lambda

    に ENI を割り当てることで VPC 内のリソースを触れるように
  16. 2016年2⽉ Bluemix OpenWhisk が previewリリース Game Server Services, Inc. https://gs2.io

    IBM の提供する Bluemix OpenWhisk が previewリリース しました。 Node.js Swift に対応
  17. 2016年4⽉ Azure Functions が プレビューリリース Game Server Services, Inc. https://gs2.io

    Microsoft が Azure Functions をプレビューリリースしました。 当時は node.js と C# のみの対応でした。
  18. 2016年6⽉ Firebaseリリース Game Server Services, Inc. https://gs2.io Google が 2014年に買収した

    Firebase を GCP との統合を進め、再リリースしました。
  19. 2016年9⽉ Azure Functions が F# に対応 Game Server Services, Inc.

    https://gs2.io Microsoft が Azure Functions が F# に対応しました。
  20. 2016年9⽉ Bluemix OpenWhisk が βリリース Game Server Services, Inc. https://gs2.io

    IBM の提供する Bluemix OpenWhisk が βリリース しました。 Java、Python に追加対応
  21. 2016年10⽉ Azure Functions が API Routing に対応 Game Server Services,

    Inc. https://gs2.io Microsoft が Azure Functions が API Routing に対応し、 RESTful な API で使⽤出来るようになりました。
  22. 2016年10⽉ ServerlessConf Tokyo 開催 Game Server Services, Inc. https://gs2.io 世界で2都市⽬として、東京で

    ServerlessConf が開催されました。 創業間もないですが、GS2も登壇しました。
  23. 2016年11⽉ Azure Functions が GA Game Server Services, Inc. https://gs2.io

    Microsoft が Azure Functions をGAしました。
  24. 2016年11⽉ AWS SAM がリリース Game Server Services, Inc. https://gs2.io Cloud

    Formation のプリプロセッサとして稼働し、 Lambda のアプリケーションフレームワークとして使⽤出来る AWS Serverless Application Model(SAM) がリリース。
  25. 2016年12⽉ Step Functions がリリース Game Server Services, Inc. https://gs2.io Lambda

    でステートフルな処理を実⾏するための Step Functions がリリース。
  26. 2016年12⽉ Bluemix OpenWhisk が GA Game Server Services, Inc. https://gs2.io

    IBM の提供する Bluemix OpenWhisk が GA しました。
  27. 2016年12⽉ Azure Functions がデバッグ実⾏に対応 Game Server Services, Inc. https://gs2.io Azure

    Functions が Visual Studio 2015 / Visual Studio Code / CLI によるデバッグ実⾏に対応。
  28. 2016年12⽉ Lambda が C#(.NET Core 1.0) をサポート Game Server Services,

    Inc. https://gs2.io Lambda が C#(.NET Core 1.0) をサポートしました。
  29. 2017年3⽉ Google Cloud Functions βリリース Game Server Services, Inc. https://gs2.io

    Google が Google Cloud Functions をパブリックβリリースしました。
  30. 2017年4⽉ X-Ray が提供開始 Game Server Services, Inc. https://gs2.io Lambda の動作を視覚化する

    X-Ray が提供開始。 パフォーマンスチューニングや不具合の調査に活⽤出来るように。
  31. 2017年7⽉ Bluemix OpenWhisk が IBM Cloud Functions へ Game Server

    Services, Inc. https://gs2.io IBM の提供する Bluemix OpenWhisk が IBM Cloud Functions にリブランドしました。 Bluemix OpenWhisk でも使⽤している OSS実装である Apache OpenWhisk との混同などを理由に挙げています。 同時に PHP のサポートが発表。
  32. 2017年8⽉ Chalice が GA Game Server Services, Inc. https://gs2.io AWS

    が提供する SAM と異なるアプリケーションフレームワーク。 CF のプリプロセッサとして稼働する SAM とは異なり、 がっつり Python のアプリケーションフレームワーク。
  33. 2017年10⽉ Azure Functions Java対応(preview) Game Server Services, Inc. https://gs2.io Microsoft

    が Azure Functions の Java対応のプレビューリリースしました。
  34. 2017年11⽉ ServerlessConf Tokyo 開催 Game Server Services, Inc. https://gs2.io 2年⽬・2回⽬となる

    Serverless Conf Tokyoが開催。 GS2は昨年に引き続き登壇しました。
  35. 真のサーバレスアーキテクトと サーバレス時代のゲーム開発・運⽤ Game Server Services, Inc. https://gs2.io GS2 では IAM

    を模したアクセス権限管理を提供している。 ポリシー判定Lambdaは全てのマイクロサービスが共通して呼び出すファンクションに切り出されている。 ポリシー判定処理を切り出している理由は、ポリシードキュメントのキャッシュヒット率を⾼める⽬的。
  36. 2017年12⽉ Cloud9 を使って Lambda の開発が可能に Game Server Services, Inc. https://gs2.io

    AWS が提供するブラウザ上で動作するIDEである Cloud9 を使って Lambda が開発出来るように。
  37. 2018年1⽉ Lambda が Go と C#(.NET Core 2.0) をサポート Game

    Server Services, Inc. https://gs2.io Lambda が Golang と C#(.NET Core 2.0) をサポートしました。
  38. 2018年6⽉ Google Cloud Functions が東京に Game Server Services, Inc. https://gs2.io

    Google Cloud Functions が東京リージョンで利⽤出来るように。
  39. 2018年7⽉ Google Cloud Functions がGA Game Server Services, Inc. https://gs2.io

    Google Cloud Functions が GA し、SLA がつくように。 対応⾔語に Python3.6 を追加。
  40. 2018年7⽉ Serverless containers が発表 Game Server Services, Inc. https://gs2.io Google

    が Serverless containers を発表しました。 Serverless containers は App Engine Flexible のリブランド+Dockerイメージによるデプロイの対応。
  41. 今後の⾒えてる予定 Game Server Services, Inc. https://gs2.io • 9⽉ ServerlessConf Tokyo

    2018 • GS2 は今年も登壇します。今年は運⽤周りを中⼼に話します。 • 11⽉ re:invent 2018 • ラスベガスで開催される AWS 主催のカンファレンスです。 毎年サーバレス関連のアップデートが複数あるので、今年も何かがあ るはずです。