先週の木曜日の祝日、PHPカンファレンスに行ってきました。
中でも、サイゲームスの開発担当者さんのお話が大変勉強になりました!(`・ω・´)
弊社も、最近Smart動態管理やタクシー検索 たくるでのアクセス増、データ爆発をどうしたらよいのか、試行錯誤だからです。(正直)
で、なるほど、と思ったところや、へー、そうやってるのか、と思ったことをメモ的に書いておきます。
<秒間5万アクセスをさばくためのいろんな努力>
PHP+MySQLで運用されているようです。(部分的にredisを利用)
・DB
負荷分散
キャッシュをなるべく利用
ボトルネックの多くはDB関連
トランザクション中の処理は最小限にする
Indexはカーディナリティが高い順に
とにかく分析、そして問題があれば修正、問題があるクエリは通知するようにし、対処
必要なくなったデータは順次パージする
データをDropするときも気を使う(画像参照)
プロファイラはNew Relicがよい
更新処理などは、なるべくバッチ処理を利用
・サーバー
ApacheよりNginxをスピード重視で採用
昔から作っているタイトルはオンプレで、最近のタイトルはクラウド
・運用
リリース前に実際の更新作業、障害対応などもリハーサル
毎日複数回デプロイ(←素晴らしいですね!)
・Zephirで高速化
PHPでExtensionを作れる言語、Zephirを利用しているそうです。
配列をループする処理などは、なんと処理時間が20%になったらしいです。(80%の削減ということ)
http://qiita.com/morisuke/items/721f6cdac20040918183
Zephirと聞くと、バイク??と思っちゃいますが、こんなんあるんですね。
そのあとは、安全なPHPアプリケーションの作り方2016というのを見ました。
こちらも勉強になりましたm(_ _)m
満席+立ち見で、熱気がありましたね!(⌒∇⌒)
見た後は、
「うぉぉ~!!いいプログラマになりたい!いいコード書きたい!!早く何か書きたい!!!」
って猛烈になりました(`・ω・´)。(マジ)
これがタダとはすばらしい!
スポンサーが年々少なくなっていく?ようなのが不安ですが、がんばっていただきたいです!