参加記録 第四回 ゲームサーバ勉強会

第四回 ゲームサーバ勉強会に参加しました。
サーバにはあんまり詳しくないですが、そういう人向けの勉強会なので助かりました。
特に名前は聞いたことがあるけど使ったことないorちょっと触ったぐらいの物の理解がある程度深まりました。

IDC Frontierさんの話

ゲームサーバの作り方

fluentdとembulkの話

  • http://www.slideshare.net/repeatedly/fluentd-and-embulk-game-server-4
  • 外部からはjsonで入力するが、内部はMessagePackらしい
  • tg-agentはfluentdにRubyインタプリタやプラグインをまとめてセットアップしやすくしたもの
  • とりあえずfluentdに送って、そこから適切な場所に割り振る使い方みたい
  • 組み込み環境向け
  • Windows環境で動くやつ
  • embulk
    • https://github.com/embulk/embulk
    • ファイルから一気にデータを入れる用
    • 失敗時に必要なファイルだけ再処理できる
    • データから形式を推測する機能もある
  • fluentd-ui
  • データ欠損
    • ストリーム処理はデータ欠損が出てしまうもの
    • 欠損が許されないものに使うのは危険
      • 課金ログとか
    • 欠損率0%の人もいるらしい
      • 構成による?
    • 通信失敗とかはfluentdが検知するのでそれで欠損はしない

負荷がたかいいんだから~♪(仮)

  • ゲームの負荷対策と負荷試験の話
  • memcached
    • 全部メモリに乗ってるKVS
  • レプリケーション遅延
    • (たぶん)masterへの変更がslaveに変更される前に読み込んでデータがおかしくなった
    • 水平分割して対処
      • 特定のIDは特定のDBに書き込むようにする
      • 1台あたりのリクエスト数を減らす?
  • NoSQL
    • Cassandra
      • リング型ノードになるため単一障害点がなくなるらしい
      • DHT?
    • トランザクション処理は基本弱い
      • そういうところはMySQLで
  • 負荷試験
    • リリース前に想定人数をちゃんと裁けるかのテスト
      • リリースしてから落ちにくい
      • チューニングしやすい
        • テーブル構造の変更とかしやすい
  • JMeter
    • http://jmeter.apache.org/
    • サーバに負荷をかけるツール
    • アクセスをプロクシして、テストケースを作る機能があるらしい
    • プログラムで負荷をかけると、プログラムが悪いのかサーバが悪いのかわからない
      • プログラムがロックして遅かったりとか
    • Socket.IOは対応していない