SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
BrainWarsの
アーキテクチャ
ダウンロード突破!万
@matsukaz
2015.02.19
@matsukaz
松下 雅和
株式会社トランスリミット
エンジニア
LT芸人
@matsukaz
松下 雅和
株式会社トランスリミット
エンジニア
LT芸人
• インフラ (AWS, Chef)
• サーバ (Rails, Socket.IO, fabric)
• フロント (cocos2d-x, C++)
• 開発/運用支援 (開発用Docker, Adminサーバ)
• ChatOps推進 (slack, hubot*3)
• その他必要なことはなんでも

(コーヒー豆購入, 卓球王者,

バランスボール&スタンディングデスク布教)
主な担当
書籍
@matsukaz
松下 雅和
株式会社トランスリミット
エンジニア
LT芸人
CA ×GREE 合同勉強会
CA ×GREE 合同勉強会
退職時もLTでお別れ
BrainWars
知ってる人?
ゲームの流れ
ホーム
マッチングホーム
マッチング
ゲーム選択
ホーム
マッチング
ゲーム選択 バトル
x3
ホーム
ホーム マッチング
ゲーム選択 バトル バトル結果
x3
マッチング
ゲーム選択 バトル バトル結果
x3
ランキング
毎週日曜24時に
ランキング確定
ホーム
わずか8ヶ月で
1000万突破!
海外ユーザ比率
95.7%
AKB48もハマる!
乃木坂46や
芸人まで
創業メンバー
BrainWarsの
アーキテクチャ
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
EC2
SNS
CloudWatch
Route 53
Slack
リアルタイム対戦
Socket Server
API Server
全体構成
SES SNS SQS
ISP
Admin Server
APK
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
Easy Deployment,
Auto Scale
(Load & Time)
EC2
ユーザデータゴースト用
バトルログ
ランキング,
一時データ
プロフィール画像,
言語ファイル, etc
SNS
CloudWatch
Route 53
Slack
リアルタイム対戦
Socket Server
API Server
SES SNS SQS
ISP
Admin Server
プレイ中
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
EC2
SNS
CloudWatch
Route 53
Slack
リアルタイム対戦
Socket Server
API Server
SES SNS SQS
ISP
メール送信 送信失敗時
Admin Server
メール送信
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
CloudWatch
Route 53
リアルタイム対戦
Socket Server
API Server
EC2
SNS
Slack
プッシュ通知
SES SNS SQS
ISP
Admin Server
device token登録
プッシュ通知
fabric,
rake tasks
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
CloudWatch
Route 53
リアルタイム対戦
Socket Server
API Server
EC2
SNS
Slack
画像削除
SES SNS SQS
ISP
名前変更,
BAN, …
Admin Server
通報対応
fabric,
rake tasks
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL)
CloudWatch
Route 53
リアルタイム対戦
Socket Server
API Server
EC2
SNS
Slack
SES SNS SQS
ISP
Admin Server
Auto Scale
運用
Dynamic
DynamoDB
APK
ビルド
fabric,
rake tasks
全体構成
MySQL
ELB
EC2
EC2
S3
OpsWorks
ElastiCache
(Redis)
DynamoDB
RDS
(MySQL) SES SNS SQS
Easy Deployment,
Auto Scale
(Load & Time)
EC2
Dynamic
DynamoDB
ユーザデータゴースト用
バトルログ
ランキング,
一時データ ISP
プロフィール画像,
言語ファイル, etc
メール送信
SNS
送信失敗時
CloudWatch
Route 53
device token登録
Slack
プッシュ通知
リアルタイム対戦
Socket Server
API Server
Auto Scale
名前変更,
BAN, …
Admin Server
fabric,
rake tasks
APK
ビルド
画像削除
宣伝
ただいま
メンバーを募集中!
• エンジニア
• プロデューサー
• CFO/COO候補
• デザイナー
• プランナー
5億DL〜 17億DL〜5億DL〜
世界をターゲットに
DL数で億超えを目指す
社内勉強会 T-Cube
(Translimit Tech Talk)
バランスボールや
スタンディングデスク
お待ちしてます!

Contenu connexe

Tendances

新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
Kei Mikage
 
RDS for PostgreSQLにまつわる雑多な話
RDS for PostgreSQLにまつわる雑多な話RDS for PostgreSQLにまつわる雑多な話
RDS for PostgreSQLにまつわる雑多な話
Satoshi Hirata
 

Tendances (20)

ビッグデータとioDriveの夕べ:ドリコムのデータ分析環境のお話
ビッグデータとioDriveの夕べ:ドリコムのデータ分析環境のお話ビッグデータとioDriveの夕べ:ドリコムのデータ分析環境のお話
ビッグデータとioDriveの夕べ:ドリコムのデータ分析環境のお話
 
Gruntでjava script前作業の自動化!
Gruntでjava script前作業の自動化!Gruntでjava script前作業の自動化!
Gruntでjava script前作業の自動化!
 
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
 
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
 
Drupal補完計画
Drupal補完計画Drupal補完計画
Drupal補完計画
 
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
新卒3年目のぼくが、でぶおぷす???なオジサンだらけのエンプラ金融PJにAnsibleを導入してみた
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 
20220111 SoftwareDesign #32 kitazaki
20220111 SoftwareDesign #32 kitazaki20220111 SoftwareDesign #32 kitazaki
20220111 SoftwareDesign #32 kitazaki
 
Rustで楽しむ競技プログラミング
Rustで楽しむ競技プログラミングRustで楽しむ競技プログラミング
Rustで楽しむ競技プログラミング
 
JAMstackは眠らない
JAMstackは眠らないJAMstackは眠らない
JAMstackは眠らない
 
ダッシュボードのつくりかた
ダッシュボードのつくりかたダッシュボードのつくりかた
ダッシュボードのつくりかた
 
すごいログ解析の話
すごいログ解析の話すごいログ解析の話
すごいログ解析の話
 
Chat opsをはじめよう!
Chat opsをはじめよう!Chat opsをはじめよう!
Chat opsをはじめよう!
 
"アレ"からJubatusを使う
"アレ"からJubatusを使う"アレ"からJubatusを使う
"アレ"からJubatusを使う
 
apasec001-kawai
apasec001-kawaiapasec001-kawai
apasec001-kawai
 
RDS for PostgreSQLにまつわる雑多な話
RDS for PostgreSQLにまつわる雑多な話RDS for PostgreSQLにまつわる雑多な話
RDS for PostgreSQLにまつわる雑多な話
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
 
Open il vol4
Open il vol4Open il vol4
Open il vol4
 
20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakims20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakims
 
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
 

En vedette

東ラるう(カラー)2012
東ラるう(カラー)2012東ラるう(カラー)2012
東ラるう(カラー)2012
Ayako Ruu
 
au女子会♪infobar a02体験会20130221
au女子会♪infobar a02体験会20130221au女子会♪infobar a02体験会20130221
au女子会♪infobar a02体験会20130221
Hiromi Itou
 

En vedette (20)

20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
 
ダブルCTO
ダブルCTOダブルCTO
ダブルCTO
 
Interactive buttonsを利用したbotをつくってみた
Interactive buttonsを利用したbotをつくってみたInteractive buttonsを利用したbotをつくってみた
Interactive buttonsを利用したbotをつくってみた
 
Open Source Software, Distributed Systems, Database as a Cloud Service
Open Source Software, Distributed Systems, Database as a Cloud ServiceOpen Source Software, Distributed Systems, Database as a Cloud Service
Open Source Software, Distributed Systems, Database as a Cloud Service
 
Fluentd Overview, Now and Then
Fluentd Overview, Now and ThenFluentd Overview, Now and Then
Fluentd Overview, Now and Then
 
Distributed Logging Architecture in Container Era
Distributed Logging Architecture in Container EraDistributed Logging Architecture in Container Era
Distributed Logging Architecture in Container Era
 
BrainWarsを支えるAWSサービスたち
BrainWarsを支えるAWSサービスたちBrainWarsを支えるAWSサービスたち
BrainWarsを支えるAWSサービスたち
 
Fluentd v0.14 Plugin API Details
Fluentd v0.14 Plugin API DetailsFluentd v0.14 Plugin API Details
Fluentd v0.14 Plugin API Details
 
Fighting API Compatibility On Fluentd Using "Black Magic"
Fighting API Compatibility On Fluentd Using "Black Magic"Fighting API Compatibility On Fluentd Using "Black Magic"
Fighting API Compatibility On Fluentd Using "Black Magic"
 
How To Write Middleware In Ruby
How To Write Middleware In RubyHow To Write Middleware In Ruby
How To Write Middleware In Ruby
 
MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版MySQLの文字コード事情 2017版
MySQLの文字コード事情 2017版
 
Modern Black Mages Fighting in the Real World
Modern Black Mages Fighting in the Real WorldModern Black Mages Fighting in the Real World
Modern Black Mages Fighting in the Real World
 
Amazon Work Spaces Application Manager
Amazon Work Spaces Application ManagerAmazon Work Spaces Application Manager
Amazon Work Spaces Application Manager
 
東ラるう(カラー)2012
東ラるう(カラー)2012東ラるう(カラー)2012
東ラるう(カラー)2012
 
Sentryを利用したエラー集約プラットフォーム
Sentryを利用したエラー集約プラットフォームSentryを利用したエラー集約プラットフォーム
Sentryを利用したエラー集約プラットフォーム
 
au女子会♪infobar a02体験会20130221
au女子会♪infobar a02体験会20130221au女子会♪infobar a02体験会20130221
au女子会♪infobar a02体験会20130221
 
スタートアップが AWS Lambda を導入した理由
スタートアップが AWS Lambda を導入した理由スタートアップが AWS Lambda を導入した理由
スタートアップが AWS Lambda を導入した理由
 
Monitを使ってみた
Monitを使ってみたMonitを使ってみた
Monitを使ってみた
 
言語の検証と導入
言語の検証と導入言語の検証と導入
言語の検証と導入
 
AWSを使って沖縄から世界へ (JAWS DAYS 2015 A-1 GP LT大会)
AWSを使って沖縄から世界へ (JAWS DAYS 2015 A-1 GP LT大会)AWSを使って沖縄から世界へ (JAWS DAYS 2015 A-1 GP LT大会)
AWSを使って沖縄から世界へ (JAWS DAYS 2015 A-1 GP LT大会)
 

Similaire à 1000万DL突破!BrainWarsのアーキテクチャ

hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
yuzorock
 
ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話
Tsuyoshi Ushio
 

Similaire à 1000万DL突破!BrainWarsのアーキテクチャ (20)

IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレスIoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
 
.NET Core for Mac users in Azure
.NET Core for Mac users in Azure.NET Core for Mac users in Azure
.NET Core for Mac users in Azure
 
160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM
 
Beatroboでのハードウェアプロトタイピング
BeatroboでのハードウェアプロトタイピングBeatroboでのハードウェアプロトタイピング
Beatroboでのハードウェアプロトタイピング
 
高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道高さ比べじゃない、キャリアは歩んできた道
高さ比べじゃない、キャリアは歩んできた道
 
IoTデバイスデータ収集の難しい点
IoTデバイスデータ収集の難しい点IoTデバイスデータ収集の難しい点
IoTデバイスデータ収集の難しい点
 
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
 
EmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについてEmbulkのGCS/BigQuery周りのプラグインについて
EmbulkのGCS/BigQuery周りのプラグインについて
 
Bpstudy20180725
Bpstudy20180725Bpstudy20180725
Bpstudy20180725
 
アカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsugアカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsug
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
 
正式リリースされた.Net coreに少し触れ合ってみる
正式リリースされた.Net coreに少し触れ合ってみる正式リリースされた.Net coreに少し触れ合ってみる
正式リリースされた.Net coreに少し触れ合ってみる
 
リクルートライフスタイル分析基盤チーム2年目が世話するデータ連携bot達のお話
リクルートライフスタイル分析基盤チーム2年目が世話するデータ連携bot達のお話リクルートライフスタイル分析基盤チーム2年目が世話するデータ連携bot達のお話
リクルートライフスタイル分析基盤チーム2年目が世話するデータ連携bot達のお話
 
ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話
 
リアルタイムにデータ分析してWebサービスの面白さを伝えたい
リアルタイムにデータ分析してWebサービスの面白さを伝えたいリアルタイムにデータ分析してWebサービスの面白さを伝えたい
リアルタイムにデータ分析してWebサービスの面白さを伝えたい
 
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
 
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ LiveOps とデータ分析編 ~
 
チャットボットの自然言語処理
チャットボットの自然言語処理チャットボットの自然言語処理
チャットボットの自然言語処理
 
ここがつらいよAws batch
ここがつらいよAws batchここがつらいよAws batch
ここがつらいよAws batch
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 

Plus de Masakazu Matsushita

海外向けサービスの苦労話
海外向けサービスの苦労話海外向けサービスの苦労話
海外向けサービスの苦労話
Masakazu Matsushita
 

Plus de Masakazu Matsushita (19)

It's up to you 〜 楽しさドリブンで歩んだ道 〜
It's up to you 〜 楽しさドリブンで歩んだ道 〜It's up to you 〜 楽しさドリブンで歩んだ道 〜
It's up to you 〜 楽しさドリブンで歩んだ道 〜
 
スタートアップで培ったアーキテクチャ設計ノウハウ
スタートアップで培ったアーキテクチャ設計ノウハウスタートアップで培ったアーキテクチャ設計ノウハウ
スタートアップで培ったアーキテクチャ設計ノウハウ
 
全世界6,500万DL突破!ヒットゲームを作り上げたチームの道のり
全世界6,500万DL突破!ヒットゲームを作り上げたチームの道のり全世界6,500万DL突破!ヒットゲームを作り上げたチームの道のり
全世界6,500万DL突破!ヒットゲームを作り上げたチームの道のり
 
EFS利用事例 -Craft Warriorsのバトルを支える仕組み-
EFS利用事例 -Craft Warriorsのバトルを支える仕組み-EFS利用事例 -Craft Warriorsのバトルを支える仕組み-
EFS利用事例 -Craft Warriorsのバトルを支える仕組み-
 
いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0
 
後悔しないもんごもんごの使い方 〜アプリ編〜
後悔しないもんごもんごの使い方 〜アプリ編〜後悔しないもんごもんごの使い方 〜アプリ編〜
後悔しないもんごもんごの使い方 〜アプリ編〜
 
いつやるの?Git入門
いつやるの?Git入門いつやるの?Git入門
いつやるの?Git入門
 
カジュアルにMongo dbのbackup機能説明
カジュアルにMongo dbのbackup機能説明カジュアルにMongo dbのbackup機能説明
カジュアルにMongo dbのbackup機能説明
 
ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例ソーシャルゲームにおけるAWS/MongoDB利用事例
ソーシャルゲームにおけるAWS/MongoDB利用事例
 
海外向けサービスの苦労話
海外向けサービスの苦労話海外向けサービスの苦労話
海外向けサービスの苦労話
 
The Case for using MongoDB in Social Game - Animal Land
The Case for using MongoDB in Social Game - Animal LandThe Case for using MongoDB in Social Game - Animal Land
The Case for using MongoDB in Social Game - Animal Land
 
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal LandソーシャルゲームにおけるMongoDB適用事例 - Animal Land
ソーシャルゲームにおけるMongoDB適用事例 - Animal Land
 
Mongo DBを半年運用してみた
Mongo DBを半年運用してみたMongo DBを半年運用してみた
Mongo DBを半年運用してみた
 
ニコカレでLife hacks
ニコカレでLife hacksニコカレでLife hacks
ニコカレでLife hacks
 
DevLOVEのDevってなんだ?
DevLOVEのDevってなんだ?DevLOVEのDevってなんだ?
DevLOVEのDevってなんだ?
 
スマフォな生活
スマフォな生活スマフォな生活
スマフォな生活
 
It's up to you
It's up to youIt's up to you
It's up to you
 
JavaScript再入門
JavaScript再入門JavaScript再入門
JavaScript再入門
 
Spring Framework勉強会
Spring  Framework勉強会Spring  Framework勉強会
Spring Framework勉強会
 

1000万DL突破!BrainWarsのアーキテクチャ