SlideShare una empresa de Scribd logo
1 de 123
ソーシャルゲーム
          スケールアウトの歴史
              gussan@Drecom Co., Ltd.




                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
提供




                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
自己紹介
              • gussan
              • ソーシャルゲーム事業本部           ※顔出しNG



               • ICTグループ
              • アーキテクト
              • twitter: @gussan
                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
仕事内容

              • ミドルウェア選定・導入等
              • ライブラリ開発
              • トラブルシュート

                               Copyright © Drecom Co., Ltd.
12年2月20日月曜日
ドリコムのソーシャルゲーム




                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01     2011/01              2012/01
                                                     なう




                    ドリコムが
          ソーシャルゲームに参入して
                        2年半


                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう




                累計ユーザ数

              1000万+

                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01      2011/01              2012/01
                                                      なう


                                               2011/12実績



                        月間PV

                50億+

                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


                                                       なう



                   サーバ台数

                  400+

                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01      2011/01              2012/01
                                                        なう




                 たった2年半

              累計ユーザ数          サーバ台数

              1000万+         400+
                          月間PV
                          50億+
                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう




              大規模トラフィック
              に魅せられる毎日


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう




              サービス安定稼働


              ユーザさんが喜ぶ

                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう




              まさにソーシャルゲーム
                の手口・・・ッ



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう




                    どのように
              サービスをスケールして
                    いったのか


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
ソーシャルゲーム
          スケールアウトの歴史


                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




                  2009年夏



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


  ココ




              mixiアプリオープン



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




              合わせて我々も
              アプリリリース


                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




              万全の準備をした



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01               2011/01              2012/01
                                                                なう


  ココ
                   version 1.0
              LB          LB

              Web        Web            • Apache 2.2
       App    App        App   App      • mongrel
                                        • Rails 2.3
                    M
                                        • MySQL 5.0
                    S


                                               Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


  ココ




              大丈夫だ、問題ない



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




       万全だと思っていた・・・



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




                               *     +    巛 ヽ
                                          〒 !   
                    リリース      。
                                    +    。  |  |
                                 *     +   / /   
                                     ∧_∧ / /
                                    (´∀` / / +   
                                    ,-     f
                                    / ュヘ    | *    
                                   〈_} )   |
                                      /    ! +    
                                     ./  ,ヘ  |
                               ガタン ||| j  / |  | |||
                              ――――――――――――
                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




                   次の瞬間



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01             2011/01              2012/01
                                                               なう


  ココ
                             繋がんなくね・・?

      運営しっかりしろやゴルァ


                サービス停止: :: :::: :: :: : :::::::::::::::::
                    . .: : : : : : :
                     . . : : : :: : : :: : ::: :: : :::: ::
               繋がらないのでやめます
                    . . .... ..: : :: :: ::: :::::: :::::::::::
                         Λ_Λ . . . .: : : :::
    そんなことより野球やろうぜ       /:彡ミ゛ヽ;)ー、 . . .:
                       / :::/:: ヽ、ヽ、 ::i . .:: :.
                       / :::/;;:   ヽ ヽ ::l . :.
                  ̄ ̄ ̄(_,ノ  ̄ ̄ ̄ヽ、_ノ ̄ ̄
                                              Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


  ココ




          100,000 install/day



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


    ココ




              その後1週間眠れぬ
              日々が続いた・・・


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


    ココ




              一体何が起きていた
                  のか


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01   2011/01              2012/01
                                                      なう


    ココ
                  撃沈理由(1)

              • 同じような種類のクエリが溜まる
              • MyISAMのテーブルロック
              • => InnoDB化することで解決

                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01   2011/01              2012/01
                                                     なう


    ココ
                 撃沈理由(2)


              •slowクエリ出まくり

              •=> 地道に潰す


                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08           2010/01   2011/01              2012/01
                                                       なう


    ココ
                   撃沈理由(3)

              •
              特定のカラムへの更新が
              多い

              •=> Memcached,
              TokyoTyrantへ逃す

                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08             2010/01                2011/01              2012/01
                                                                      なう


    ココ
                     version 1.1
               LB              LB             • Apache 2.2
               Web            Web             • mongrel
       App      App           App    App      • Rails 2.3
                                              • MySQL 5.0
              Mem      M        TT
                                              • Memcached
                        S
                                              • TokyoTyrant
                                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01    2011/01              2012/01
                                                       なう


    ココ
                           教訓

              • 事前準備足りなかった
              • 十分大きなデータを利用して負荷試験
               を行うことができなかった

              • => JMeterでの負荷試験をリリース手
               順に追加


                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう


              ココ




                        2009/冬
                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


               ココ




              DBマスター負荷増



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01   2011/01              2012/01
                                                     なう


                ココ
                     DBマスタ
              • 更新量増
              • コストの高い参照処理が足を引っ
               張る

              • ランキング
              • 同一レベル帯のユーザ検索
                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


               ココ




              コストの高い参照ク
               エリをslaveへ


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01               2011/01              2012/01
                                                                なう


               ココ
                   version 1.2
              LB          LB            • Apache 2.2
              Web        Web            • mongrel
       App    App        App   App      • Rails 2.3
                                        • MySQL 5.0
       Mem          M          TT
                                        • Memcached
                    S
                                        • TokyoTyrant
                                               Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01              2012/01
                                                    なう


               ココ




              どちらかが死んだ時
               にキャパオーバ


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01                  2011/01              2012/01
                                                                   なう


               ココ
                   version 1.3
              LB            LB             • Apache 2.2
              Web           Web            • mongrel
       App    App        App      App      • Rails 2.3
                                           • MySQL 5.0
       Mem          M             TT
                                           • Memcached
                    S
                        S                  • TokyoTyrant
                                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01    2011/01              2012/01
                                                       なう


                 ココ
                           結果

              • masterの負荷下がった!
              • slaveの負荷上がりすぎた・・
              • クエリチューニングは引き続き

                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう


                        ココ




   2010/夏



                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01        2011/01              2012/01
                                                         なう


                         ココ




              これまで騙し騙し
              使ってきたMySQL


                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08           2010/01        2011/01              2012/01
                                                            なう
                            ココ


                MySQLがピンチ

              • 更新量増によるIO Wait増
              • BufferPool溢れ
              • CPU Usage増
              • レプリケーション遅延

                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01        2011/01              2012/01
                                                          なう
                          ココ



                               重いよー
         運営やる気あんの?


              すでにキャパシティ
               は限界・・・
                  繋がらないのでやめます

    そんなことより野球やろうぜ


                                         Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




              チューニングも
              手を尽くした


                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




               よろしい、
              ならば分散だ


                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




              垂直か水平か



                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08           2010/01        2011/01              2012/01
                                                            なう
                            ココ


                       垂直分散
              • テーブルごとに使用するDBを分ける
              • Railsではmodel毎に接続を切り替える
              • 実装は簡単
              • 関連が切れてしまう
              • plugin: data_fabric, octopus
                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01                   2011/01              2012/01
                                                                    なう
                          ココ


                   version 2.0
              LB          LB                • Apache 2.2
              Web        Web                • mongrel
       App    App        App       App      • Rails 2.3
                                            • MySQL 5.0
  Mem          M1         M2
                                            • Memcached
    TT          S         S
                    S          S            • TokyoTyrant
                                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08            2010/01                 2011/01              2012/01
                                                                      なう
                              ココ


                      version 2.1
              LB              LB              • Apache 2.2
              Web            Web              • mongrel
       App     App           App   App        • Rails 2.3
                                              • MySQL 5.0
  Mem         M1        M2         M3
                                              • Memcached
    TT        S          S         S
                  S          S         S      • TokyoTyrant
                                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08               2010/01                    2011/01              2012/01
                                                                            なう
                                 ココ


                       version 2.2
                  LB             LB                 • Apache 2.2
                  Web           Web                 • mongrel
       App         App          App      App        • Rails 2.3
                                                    • MySQL 5.0
  Mem         M1       M2        M3      M4
                                                    • Memcached
    TT        S         S        S       S
                  S         S        S       S      • TokyoTyrant
                                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01        2011/01              2012/01
                                                           なう
                           ココ


                垂直分散の結果
              • 5分割まで突入
              • ある程度負荷は分散できた
              • 運用コスト増
              • メンテナンス大変
              • 限界が見えてきた
                                          Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01        2011/01              2012/01
                                                          なう
                          ココ




              2010/秋
                                         Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




              比較的サービスが
              安定している日々


                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




                        突如



                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01        2011/01              2012/01
                                                         なう
                         ココ




              レスポンスが遅くなる



                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01        2011/01              2012/01
                                                           なう
                           ココ


                  遅くなる原因
              • サービス内部要因
               • Datastoreが遅い
               • 処理内容が大きい
              • サービス外部要因
               • 外部APIの応答が遅い
                                          Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01        2011/01              2012/01
                                                        なう
                        ココ




          それResqueでできるよ



                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01        2011/01              2012/01
                                                           なう
                           ココ


                非同期処理導入
              • 時間のかかる処理をリクエスト処理と
               分離

              • Resque gem
              • github内で使われている
              • キューとしてRedisを使用
                                          Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08               2010/01                  2011/01              2012/01
                                                                          なう
                                      ココ


                       version 3.0
                  LB             LB               • Apache 2.2
                  Web           Web               • mongrel
       App         App          App    App        • Rails 2.3
                                                  • Redis+Resque
  Mem         M1       M2              Redis

                                                  • MySQL 5.0
              S         S             worker
                  S         S                     • Memcached
                                                         Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08           2010/01        2011/01              2012/01
                                                            なう
                            ココ


                        Resque
              • ヘビーな処理を後ろに回せるように
               なった

              • Redisの安定運用は意外と難しい
              • クセやハマりどころを知っていれば。
              • Resque workerは1job 1forkしている
               のでそれなりにコスト高い

                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2010/冬




                Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01    2011/01              2012/01
                                                    なう
                        ココ




              フロントの構成を
                刷新した


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                 2010/01                2011/01               2012/01
                                                                           なう
                                              ココ


                         version 4.0
                    LB             LB              • Nginx 1.0.x
              Web       Web       Web   Web        • Unicorn
              App       App       App   App
                                                   • Rails 3.0
                                                   • Redis+Resque
  Mem          M1        M2             Redis

                                                   • MySQL 5.1
                S         S             worker
                    S         S                    • Memcached
                                                          Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01    2011/01              2012/01
                                                    なう
                        ココ




          モダンな構成( ^ω^)



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ



                         2011/夏




                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




                  3度目の夏



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              ヒットアプリも
              増えて迎えた夏


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01               2012/01
                                                     なう
                                   ココ




              カードバトルシステムに
                洗礼を受ける


                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01   2011/01               2012/01
                                                       なう
                                     ココ


              カードバトルのPV
              •農園系など

               • 150 250PV/Day/User

              •カードバトル

               • 350 750PV/day/user
                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01    2011/01               2012/01
                                                       なう
                                     ココ



              •150 250PV/Day/User

              •350    750PV/day/user

                      ( ゚д゚)



                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              (つд )ゴシゴシ



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01    2011/01               2012/01
                                                       なう
                                     ココ



              •150 250PV/Day/User

              •350    750PV/day/user

              ( ゚д゚)三倍・・?



                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              平均30ポチ/1h
                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




                   _, ._
                (;゚ Д゚)


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              ギリギリの運用



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01               2012/01
                                                     なう
                                   ココ




              SQLチューニングが
                 続くある日


                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




          MySQLが悲鳴を上げ
                る


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01     2011/01               2012/01
                                                        なう
                                      ココ



                          あれ?つながらない
              またかよー・・

                  数時間置きに
                                 運営はやくしろ
                  数分アクセス
               できなくなる事象
    そんなことより野球やろうぜ


                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




                通称
              「ちゅどる」※社内呼称


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
根本的解決には
              数週間を要した


                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
そしてあろうことか



                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
あれーまたかーしょうがないなぁ
              5分待つか・・・

              ユーザさんが障害に
              馴れてしまった・・
                         別なゲームやっとくか
    そんなことより野球やろうぜ


                            Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




                 調査の結果



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01               2012/01
                                                     なう
                                   ココ




                    MySQLが
              ある処理を行なっている
               ことが判明した


                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01      2011/01               2012/01
                                                         なう
                                       ココ


              full checkpointing




        http://www.mysqlperformanceblog.com/
         2008/11/13/adaptive-checkpointing/
                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01   2011/01               2012/01
                                                       なう
                                     ココ


              full checkpointing

              • 更新処理が数時間に一回、数分ほど更
               新が完全に停止する

              • 更新量に応じて発生
              • データ領域へのflush処理

                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01               2012/01
                                                     なう
                                   ココ




              解決策を探していた



                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              誰かが言った



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




          「Percona使おうぜ」



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08          2010/01    2011/01               2012/01
                                                        なう
                                      ココ


                Percona Server

              • MySQLをベースにしている
              • 特にInnoDB部分に多数のpatchが当
               たっている

              • flush処理の高速化、SSD最適化等

                                       Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08             2010/01        2011/01               2012/01
                                                               なう
                                             ココ


                 Percona Server

              • innodb_flush_neighbor_pages = 0
              • innodb_adaptive_checkpoint =
                keep_avarage

              • innodb_io_capacity = xxxx;

                                              Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01     2011/01               2012/01
                                                      なう
                                    ココ




                        しかし



                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              導入したとしても
               先が見えない


                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08        2010/01   2011/01               2012/01
                                                     なう
                                   ココ




              IOは既に限界突破



                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




              また誰かが言った



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01               2012/01
                                                    なう
                                  ココ




          「Fusion-io 使おう」



                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08         2010/01   2011/01               2012/01
                                                      なう
                                    ココ


              Fusion-io ioDrive




                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08            2010/01       2011/01               2012/01
                                                             なう
                                           ココ


               Fusion-io ioDrive

              • 200,000+iops >> 600 iops(RAID10)
              • レイテンシ低
              • 弊社の検証でPercona Server5.5 +
               ioDrive では、MySQL5.1+RAID10の
               約5倍の性能(参照:更新=10:1)


                                            Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08              2010/01                   2011/01                2012/01
                                                                            なう
                                                         ココ


                         version 5.0
                    LB           LB               • Nginx 1.x
              Web   Web      Web      Web         • unicorn 4.1
              App   App        App    App
                                                  • Rails 3.0
                                                  • Percona Server
  Mem               M1       M2       Redis          5.5


                    S        S        worker      • Memcached,
                         S       S                   Redis...


                                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08           2010/01    2011/01               2012/01
                                                         なう
                                       ココ


              Percona + ioDrive
              • 問題は解決
              • Fusion-ioは甘え
              • キャパシティに余裕ができた
              • なんとコストが下がった (5cluster =>
               1 2cluster)


                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08       2010/01   2011/01              2012/01
                                                   なう

                                                   ココ




              そして現在に至る



                                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
未来への投資



                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
スケーラブルで安定した
           システムを作るため


                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                      なう




                  投資

              •
              稼働率の向上

              •スケーラビリティの向上


                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                            なう



                 稼働率の向上


              • シングルポイントを潰す
              • 自動フェイルオーバー


                              Copyright © Drecom Co., Ltd.
12年2月20日月曜日
シングルポイント
                          LB           LB

                    Web   Web      Web      Web
                    App   App      App      App



              Mem         M1       M2       Redis


                          S        S        worker
                               S       S

                                                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                                                 なう



          CacheサーバのHA化
              •   Memcached

                  •   マシンのメンテができない

                  •   Replication



              •   kyototycoonのmemcached protocol

                  •   dual master構成

                  •   monit+keepalived

                                                   Copyright © Drecom Co., Ltd.
12年2月20日月曜日
RedisサーバのHA化

              • Redis
               • replication
               • monit+keepalived
               • 多少のデータロストは諦める

                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                                         なう



                DBサーバのHA化

              • Semi-Sync Replication(on
                MySQL5.5)

              • monit+keepalived
              • スペアサーバが自動的にスレーブに

                                           Copyright © Drecom Co., Ltd.
12年2月20日月曜日
現在の構成
                         LB           LB

                   Web   Web      Web      Web
                   App   App      App      App



              KT         M1       M2       Redis       Redis


              KT         S        S        worker      worker
                              S       S

                                                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                                      なう



               スケーラビリティ

              • 水平分散
               • MySQL Spiderを検討していたが、
                更新性能、JOIN性能の部分で断念

               • ActiveRecord Sharding pluginの検
                討


                                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                                    なう



                  Turntable(仮)
              • ActiveRecord Sharding plugin
              • MySQL Spiderにインスパイアされた
              • shardingはほぼ自動化されているた
               め、本質的なコードに集中できる

              • 他のpluginに比べ、コードの変更が少
               ない

                                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2009/08                                       なう




               Turntable(仮)は
              本年度内に公開予定


                         Copyright © Drecom Co., Ltd.
12年2月20日月曜日
ドリコムでは、
              このような取り組みを
                 行なって


                        Copyright © Drecom Co., Ltd.
12年2月20日月曜日
想定しうるトラフィック
          への対応を進めています


                  Copyright © Drecom Co., Ltd.
12年2月20日月曜日
まとめ



                    Copyright © Drecom Co., Ltd.
12年2月20日月曜日
話したこと
              • ソーシャルゲーム怖い
              • ドリコムのサービススケーリングのこれ
               まで

              • ソーシャルゲーム怖い
              • ドリコムのサービススケーリングの未来
              • ソーシャルゲーム怖い
                              Copyright © Drecom Co., Ltd.
12年2月20日月曜日
これからも引き続き



                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
ユーザさんに
              満足頂けるサービス
                  を提供

                     Copyright © Drecom Co., Ltd.
12年2月20日月曜日
ご清聴ありがとうございました。




                      Copyright © Drecom Co., Ltd.
12年2月20日月曜日
Thank you

               ドリコムでは、
          大規模トラフィックが大好きな
              仲間を募集しています



                         Copyright © Drecom Co., Ltd.
12年2月20日月曜日

Más contenido relacionado

La actualidad más candente

インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方Shohei Koyama
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
 
これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア外道 父
 
CVE、JVN番号の取得経験者になろう!
CVE、JVN番号の取得経験者になろう!CVE、JVN番号の取得経験者になろう!
CVE、JVN番号の取得経験者になろう!kazkiti
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)Yoshitaka Kawashima
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoTakayuki Shimizukawa
 
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Shin Ohno
 
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニアakira6592
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門大樹 小倉
 
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方kwatch
 
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかSQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかShogo Wakayama
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビューTakafumi ONAKA
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪Takuto Wada
 
スペシャリストになるには
スペシャリストになるにはスペシャリストになるには
スペシャリストになるには外道 父
 
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Yahoo!デベロッパーネットワーク
 
心理的安全性の構造 デブサミ2019夏 structure of psychological safety
心理的安全性の構造 デブサミ2019夏 structure of psychological safety心理的安全性の構造 デブサミ2019夏 structure of psychological safety
心理的安全性の構造 デブサミ2019夏 structure of psychological safetyTokoroten Nakayama
 
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]DeNA
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)Yoshitaka Kawashima
 
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~ CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~ SEGADevTech
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころTakuto Wada
 

La actualidad más candente (20)

インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
 
これからはじめるインフラエンジニア
これからはじめるインフラエンジニアこれからはじめるインフラエンジニア
これからはじめるインフラエンジニア
 
CVE、JVN番号の取得経験者になろう!
CVE、JVN番号の取得経験者になろう!CVE、JVN番号の取得経験者になろう!
CVE、JVN番号の取得経験者になろう!
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
 
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
 
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかSQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するか
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
スペシャリストになるには
スペシャリストになるにはスペシャリストになるには
スペシャリストになるには
 
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
 
心理的安全性の構造 デブサミ2019夏 structure of psychological safety
心理的安全性の構造 デブサミ2019夏 structure of psychological safety心理的安全性の構造 デブサミ2019夏 structure of psychological safety
心理的安全性の構造 デブサミ2019夏 structure of psychological safety
 
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
 
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
 
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~ CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
CEDEC2021 ダウンロード時間を大幅減!~大量のアセットをさばく高速な実装と運用事例の共有~
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころ
 

Más de Drecom Co., Ltd.

コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活Drecom Co., Ltd.
 
サービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdfサービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdfDrecom Co., Ltd.
 
ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治Drecom Co., Ltd.
 
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介Drecom Co., Ltd.
 
HTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発についてHTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発についてDrecom Co., Ltd.
 
「AROW」お披露目(導入編)
「AROW」お披露目(導入編)「AROW」お披露目(導入編)
「AROW」お披露目(導入編)Drecom Co., Ltd.
 
「AROW」お披露目(実用編)
「AROW」お披露目(実用編)「AROW」お披露目(実用編)
「AROW」お披露目(実用編)Drecom Co., Ltd.
 
AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜Drecom Co., Ltd.
 
AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜Drecom Co., Ltd.
 
rails-developers-meetup-day4
rails-developers-meetup-day4rails-developers-meetup-day4
rails-developers-meetup-day4Drecom Co., Ltd.
 
html5conf2018-sponsor-session
html5conf2018-sponsor-sessionhtml5conf2018-sponsor-session
html5conf2018-sponsor-sessionDrecom Co., Ltd.
 
DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!Drecom Co., Ltd.
 
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法Drecom Co., Ltd.
 
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチLoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチDrecom Co., Ltd.
 
今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!Drecom Co., Ltd.
 
位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよ位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよDrecom Co., Ltd.
 
カンバンと朝会とわたくし
カンバンと朝会とわたくしカンバンと朝会とわたくし
カンバンと朝会とわたくしDrecom Co., Ltd.
 
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介Drecom Co., Ltd.
 
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜Drecom Co., Ltd.
 
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…Drecom Co., Ltd.
 

Más de Drecom Co., Ltd. (20)

コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活
 
サービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdfサービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdf
 
ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治
 
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
 
HTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発についてHTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発について
 
「AROW」お披露目(導入編)
「AROW」お披露目(導入編)「AROW」お披露目(導入編)
「AROW」お披露目(導入編)
 
「AROW」お披露目(実用編)
「AROW」お披露目(実用編)「AROW」お披露目(実用編)
「AROW」お披露目(実用編)
 
AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜
 
AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜
 
rails-developers-meetup-day4
rails-developers-meetup-day4rails-developers-meetup-day4
rails-developers-meetup-day4
 
html5conf2018-sponsor-session
html5conf2018-sponsor-sessionhtml5conf2018-sponsor-session
html5conf2018-sponsor-session
 
DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!
 
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
 
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチLoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
 
今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!
 
位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよ位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよ
 
カンバンと朝会とわたくし
カンバンと朝会とわたくしカンバンと朝会とわたくし
カンバンと朝会とわたくし
 
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
 
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
 
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
 

Último

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Último (9)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

ソーシャルゲームスケールアウトの歴史

  • 1. ソーシャルゲーム スケールアウトの歴史 gussan@Drecom Co., Ltd. Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 2. 提供 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 3. 自己紹介 • gussan • ソーシャルゲーム事業本部 ※顔出しNG • ICTグループ • アーキテクト • twitter: @gussan Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 4. 仕事内容 • ミドルウェア選定・導入等 • ライブラリ開発 • トラブルシュート Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 5. ドリコムのソーシャルゲーム Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 6. 2009/08 2010/01 2011/01 2012/01 なう ドリコムが ソーシャルゲームに参入して 2年半 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 7. 2009/08 2010/01 2011/01 2012/01 なう 累計ユーザ数 1000万+ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 8. 2009/08 2010/01 2011/01 2012/01 なう 2011/12実績 月間PV 50億+ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 9. 2009/08 2010/01 2011/01 2012/01 なう なう サーバ台数 400+ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 10. 2009/08 2010/01 2011/01 2012/01 なう たった2年半 累計ユーザ数 サーバ台数 1000万+ 400+ 月間PV 50億+ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 11. 2009/08 2010/01 2011/01 2012/01 なう 大規模トラフィック に魅せられる毎日 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 12. 2009/08 2010/01 2011/01 2012/01 なう サービス安定稼働 ユーザさんが喜ぶ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 13. 2009/08 2010/01 2011/01 2012/01 なう まさにソーシャルゲーム の手口・・・ッ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 14. 2009/08 2010/01 2011/01 2012/01 なう どのように サービスをスケールして いったのか Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 15. ソーシャルゲーム スケールアウトの歴史 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 16. 2009/08 2010/01 2011/01 2012/01 なう ココ 2009年夏 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 17. 2009/08 2010/01 2011/01 2012/01 なう ココ mixiアプリオープン Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 18. 2009/08 2010/01 2011/01 2012/01 なう ココ 合わせて我々も アプリリリース Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 19. 2009/08 2010/01 2011/01 2012/01 なう ココ 万全の準備をした Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 20. 2009/08 2010/01 2011/01 2012/01 なう ココ version 1.0 LB LB Web Web • Apache 2.2 App App App App • mongrel • Rails 2.3 M • MySQL 5.0 S Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 21. 2009/08 2010/01 2011/01 2012/01 なう ココ 大丈夫だ、問題ない Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 22. 2009/08 2010/01 2011/01 2012/01 なう ココ 万全だと思っていた・・・ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 23. 2009/08 2010/01 2011/01 2012/01 なう ココ  *     +    巛 ヽ             〒 !    リリース 。       +    。  |  |    *     +   / /           ∧_∧ / /       (´∀` / / +          ,-     f       / ュヘ    | *          〈_} )   |         /    ! +            ./  ,ヘ  |  ガタン ||| j  / |  | ||| ―――――――――――― Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 24. 2009/08 2010/01 2011/01 2012/01 なう ココ 次の瞬間 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 25. 2009/08 2010/01 2011/01 2012/01 なう ココ 繋がんなくね・・? 運営しっかりしろやゴルァ サービス停止: :: :::: :: :: : ::::::::::::::::: . .: : : : : : :     . . : : : :: : : :: : ::: :: : :::: :: 繋がらないのでやめます    . . .... ..: : :: :: ::: :::::: :::::::::::         Λ_Λ . . . .: : : ::: そんなことより野球やろうぜ       /:彡ミ゛ヽ;)ー、 . . .:       / :::/:: ヽ、ヽ、 ::i . .:: :.       / :::/;;:   ヽ ヽ ::l . :.  ̄ ̄ ̄(_,ノ  ̄ ̄ ̄ヽ、_ノ ̄ ̄ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 26. 2009/08 2010/01 2011/01 2012/01 なう ココ 100,000 install/day Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 27. 2009/08 2010/01 2011/01 2012/01 なう ココ その後1週間眠れぬ 日々が続いた・・・ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 28. 2009/08 2010/01 2011/01 2012/01 なう ココ 一体何が起きていた のか Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 29. 2009/08 2010/01 2011/01 2012/01 なう ココ 撃沈理由(1) • 同じような種類のクエリが溜まる • MyISAMのテーブルロック • => InnoDB化することで解決 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 30. 2009/08 2010/01 2011/01 2012/01 なう ココ 撃沈理由(2) •slowクエリ出まくり •=> 地道に潰す Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 31. 2009/08 2010/01 2011/01 2012/01 なう ココ 撃沈理由(3) • 特定のカラムへの更新が 多い •=> Memcached, TokyoTyrantへ逃す Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 32. 2009/08 2010/01 2011/01 2012/01 なう ココ version 1.1 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M TT • Memcached S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 33. 2009/08 2010/01 2011/01 2012/01 なう ココ 教訓 • 事前準備足りなかった • 十分大きなデータを利用して負荷試験 を行うことができなかった • => JMeterでの負荷試験をリリース手 順に追加 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 34. 2009/08 2010/01 2011/01 2012/01 なう ココ 2009/冬 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 35. 2009/08 2010/01 2011/01 2012/01 なう ココ DBマスター負荷増 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 36. 2009/08 2010/01 2011/01 2012/01 なう ココ DBマスタ • 更新量増 • コストの高い参照処理が足を引っ 張る • ランキング • 同一レベル帯のユーザ検索 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 37. 2009/08 2010/01 2011/01 2012/01 なう ココ コストの高い参照ク エリをslaveへ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 38. 2009/08 2010/01 2011/01 2012/01 なう ココ version 1.2 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M TT • Memcached S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 39. 2009/08 2010/01 2011/01 2012/01 なう ココ どちらかが死んだ時 にキャパオーバ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 40. 2009/08 2010/01 2011/01 2012/01 なう ココ version 1.3 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M TT • Memcached S S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 41. 2009/08 2010/01 2011/01 2012/01 なう ココ 結果 • masterの負荷下がった! • slaveの負荷上がりすぎた・・ • クエリチューニングは引き続き Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 42. 2009/08 2010/01 2011/01 2012/01 なう ココ 2010/夏 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 43. 2009/08 2010/01 2011/01 2012/01 なう ココ これまで騙し騙し 使ってきたMySQL Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 44. 2009/08 2010/01 2011/01 2012/01 なう ココ MySQLがピンチ • 更新量増によるIO Wait増 • BufferPool溢れ • CPU Usage増 • レプリケーション遅延 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 45. 2009/08 2010/01 2011/01 2012/01 なう ココ 重いよー 運営やる気あんの? すでにキャパシティ は限界・・・ 繋がらないのでやめます そんなことより野球やろうぜ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 46. 2009/08 2010/01 2011/01 2012/01 なう ココ チューニングも 手を尽くした Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 47. 2009/08 2010/01 2011/01 2012/01 なう ココ よろしい、 ならば分散だ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 48. 2009/08 2010/01 2011/01 2012/01 なう ココ 垂直か水平か Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 49. 2009/08 2010/01 2011/01 2012/01 なう ココ 垂直分散 • テーブルごとに使用するDBを分ける • Railsではmodel毎に接続を切り替える • 実装は簡単 • 関連が切れてしまう • plugin: data_fabric, octopus Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 50. 2009/08 2010/01 2011/01 2012/01 なう ココ version 2.0 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M1 M2 • Memcached TT S S S S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 51. 2009/08 2010/01 2011/01 2012/01 なう ココ version 2.1 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M1 M2 M3 • Memcached TT S S S S S S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 52. 2009/08 2010/01 2011/01 2012/01 なう ココ version 2.2 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • MySQL 5.0 Mem M1 M2 M3 M4 • Memcached TT S S S S S S S S • TokyoTyrant Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 53. 2009/08 2010/01 2011/01 2012/01 なう ココ 垂直分散の結果 • 5分割まで突入 • ある程度負荷は分散できた • 運用コスト増 • メンテナンス大変 • 限界が見えてきた Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 54. 2009/08 2010/01 2011/01 2012/01 なう ココ 2010/秋 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 55. 2009/08 2010/01 2011/01 2012/01 なう ココ 比較的サービスが 安定している日々 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 56. 2009/08 2010/01 2011/01 2012/01 なう ココ 突如 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 57. 2009/08 2010/01 2011/01 2012/01 なう ココ レスポンスが遅くなる Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 58. 2009/08 2010/01 2011/01 2012/01 なう ココ 遅くなる原因 • サービス内部要因 • Datastoreが遅い • 処理内容が大きい • サービス外部要因 • 外部APIの応答が遅い Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 59. 2009/08 2010/01 2011/01 2012/01 なう ココ それResqueでできるよ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 60. 2009/08 2010/01 2011/01 2012/01 なう ココ 非同期処理導入 • 時間のかかる処理をリクエスト処理と 分離 • Resque gem • github内で使われている • キューとしてRedisを使用 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 61. 2009/08 2010/01 2011/01 2012/01 なう ココ version 3.0 LB LB • Apache 2.2 Web Web • mongrel App App App App • Rails 2.3 • Redis+Resque Mem M1 M2 Redis • MySQL 5.0 S S worker S S • Memcached Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 62. 2009/08 2010/01 2011/01 2012/01 なう ココ Resque • ヘビーな処理を後ろに回せるように なった • Redisの安定運用は意外と難しい • クセやハマりどころを知っていれば。 • Resque workerは1job 1forkしている のでそれなりにコスト高い Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 63. 2010/冬 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 64. 2009/08 2010/01 2011/01 2012/01 なう ココ フロントの構成を 刷新した Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 65. 2009/08 2010/01 2011/01 2012/01 なう ココ version 4.0 LB LB • Nginx 1.0.x Web Web Web Web • Unicorn App App App App • Rails 3.0 • Redis+Resque Mem M1 M2 Redis • MySQL 5.1 S S worker S S • Memcached Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 66. 2009/08 2010/01 2011/01 2012/01 なう ココ モダンな構成( ^ω^) Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 67. 2009/08 2010/01 2011/01 2012/01 なう ココ 2011/夏 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 68. 2009/08 2010/01 2011/01 2012/01 なう ココ 3度目の夏 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 69. 2009/08 2010/01 2011/01 2012/01 なう ココ ヒットアプリも 増えて迎えた夏 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 70. 2009/08 2010/01 2011/01 2012/01 なう ココ カードバトルシステムに 洗礼を受ける Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 71. 2009/08 2010/01 2011/01 2012/01 なう ココ カードバトルのPV •農園系など • 150 250PV/Day/User •カードバトル • 350 750PV/day/user Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 72. 2009/08 2010/01 2011/01 2012/01 なう ココ •150 250PV/Day/User •350 750PV/day/user ( ゚д゚) Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 73. 2009/08 2010/01 2011/01 2012/01 なう ココ (つд )ゴシゴシ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 74. 2009/08 2010/01 2011/01 2012/01 なう ココ •150 250PV/Day/User •350 750PV/day/user ( ゚д゚)三倍・・? Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 75. 2009/08 2010/01 2011/01 2012/01 なう ココ 平均30ポチ/1h Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 76. 2009/08 2010/01 2011/01 2012/01 なう ココ   _, ._ (;゚ Д゚) Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 77. 2009/08 2010/01 2011/01 2012/01 なう ココ ギリギリの運用 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 78. 2009/08 2010/01 2011/01 2012/01 なう ココ SQLチューニングが 続くある日 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 79. 2009/08 2010/01 2011/01 2012/01 なう ココ MySQLが悲鳴を上げ る Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 80. 2009/08 2010/01 2011/01 2012/01 なう ココ あれ?つながらない またかよー・・ 数時間置きに 運営はやくしろ 数分アクセス できなくなる事象 そんなことより野球やろうぜ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 81. 2009/08 2010/01 2011/01 2012/01 なう ココ 通称 「ちゅどる」※社内呼称 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 82. 根本的解決には 数週間を要した Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 83. そしてあろうことか Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 84. あれーまたかーしょうがないなぁ 5分待つか・・・ ユーザさんが障害に 馴れてしまった・・ 別なゲームやっとくか そんなことより野球やろうぜ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 85. 2009/08 2010/01 2011/01 2012/01 なう ココ 調査の結果 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 86. 2009/08 2010/01 2011/01 2012/01 なう ココ MySQLが ある処理を行なっている ことが判明した Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 87. 2009/08 2010/01 2011/01 2012/01 なう ココ full checkpointing http://www.mysqlperformanceblog.com/ 2008/11/13/adaptive-checkpointing/ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 88. 2009/08 2010/01 2011/01 2012/01 なう ココ full checkpointing • 更新処理が数時間に一回、数分ほど更 新が完全に停止する • 更新量に応じて発生 • データ領域へのflush処理 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 89. 2009/08 2010/01 2011/01 2012/01 なう ココ 解決策を探していた Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 90. 2009/08 2010/01 2011/01 2012/01 なう ココ 誰かが言った Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 91. 2009/08 2010/01 2011/01 2012/01 なう ココ 「Percona使おうぜ」 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 92. 2009/08 2010/01 2011/01 2012/01 なう ココ Percona Server • MySQLをベースにしている • 特にInnoDB部分に多数のpatchが当 たっている • flush処理の高速化、SSD最適化等 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 93. 2009/08 2010/01 2011/01 2012/01 なう ココ Percona Server • innodb_flush_neighbor_pages = 0 • innodb_adaptive_checkpoint = keep_avarage • innodb_io_capacity = xxxx; Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 94. 2009/08 2010/01 2011/01 2012/01 なう ココ しかし Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 95. 2009/08 2010/01 2011/01 2012/01 なう ココ 導入したとしても 先が見えない Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 96. 2009/08 2010/01 2011/01 2012/01 なう ココ IOは既に限界突破 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 97. 2009/08 2010/01 2011/01 2012/01 なう ココ また誰かが言った Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 98. 2009/08 2010/01 2011/01 2012/01 なう ココ 「Fusion-io 使おう」 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 99. 2009/08 2010/01 2011/01 2012/01 なう ココ Fusion-io ioDrive Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 100. 2009/08 2010/01 2011/01 2012/01 なう ココ Fusion-io ioDrive • 200,000+iops >> 600 iops(RAID10) • レイテンシ低 • 弊社の検証でPercona Server5.5 + ioDrive では、MySQL5.1+RAID10の 約5倍の性能(参照:更新=10:1) Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 101. 2009/08 2010/01 2011/01 2012/01 なう ココ version 5.0 LB LB • Nginx 1.x Web Web Web Web • unicorn 4.1 App App App App • Rails 3.0 • Percona Server Mem M1 M2 Redis 5.5 S S worker • Memcached, S S Redis... Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 102. 2009/08 2010/01 2011/01 2012/01 なう ココ Percona + ioDrive • 問題は解決 • Fusion-ioは甘え • キャパシティに余裕ができた • なんとコストが下がった (5cluster => 1 2cluster) Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 103. 2009/08 2010/01 2011/01 2012/01 なう ココ そして現在に至る Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 104. 未来への投資 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 105. スケーラブルで安定した システムを作るため Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 106. 2009/08 なう 投資 • 稼働率の向上 •スケーラビリティの向上 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 107. 2009/08 なう 稼働率の向上 • シングルポイントを潰す • 自動フェイルオーバー Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 108. シングルポイント LB LB Web Web Web Web App App App App Mem M1 M2 Redis S S worker S S Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 109. 2009/08 なう CacheサーバのHA化 • Memcached • マシンのメンテができない • Replication • kyototycoonのmemcached protocol • dual master構成 • monit+keepalived Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 110. RedisサーバのHA化 • Redis • replication • monit+keepalived • 多少のデータロストは諦める Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 111. 2009/08 なう DBサーバのHA化 • Semi-Sync Replication(on MySQL5.5) • monit+keepalived • スペアサーバが自動的にスレーブに Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 112. 現在の構成 LB LB Web Web Web Web App App App App KT M1 M2 Redis Redis KT S S worker worker S S Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 113. 2009/08 なう スケーラビリティ • 水平分散 • MySQL Spiderを検討していたが、 更新性能、JOIN性能の部分で断念 • ActiveRecord Sharding pluginの検 討 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 114. 2009/08 なう Turntable(仮) • ActiveRecord Sharding plugin • MySQL Spiderにインスパイアされた • shardingはほぼ自動化されているた め、本質的なコードに集中できる • 他のpluginに比べ、コードの変更が少 ない Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 115. 2009/08 なう Turntable(仮)は 本年度内に公開予定 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 116. ドリコムでは、 このような取り組みを 行なって Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 117. 想定しうるトラフィック への対応を進めています Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 118. まとめ Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 119. 話したこと • ソーシャルゲーム怖い • ドリコムのサービススケーリングのこれ まで • ソーシャルゲーム怖い • ドリコムのサービススケーリングの未来 • ソーシャルゲーム怖い Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 120. これからも引き続き Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 121. ユーザさんに 満足頂けるサービス を提供 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 122. ご清聴ありがとうございました。 Copyright © Drecom Co., Ltd. 12年2月20日月曜日
  • 123. Thank you ドリコムでは、 大規模トラフィックが大好きな 仲間を募集しています Copyright © Drecom Co., Ltd. 12年2月20日月曜日