いきさつ
PHPで大規模なシステムを開発することになった。
パフォーマンスとかトランザクション的なことが心配なので調査する。
そもそも大規模開発できるの?
楽天でも採用されているから多分大丈夫なんだろう。。
ただ確かに分散化とかしたらセッションとかどうなるだろうね?(疑問)
https://japan.cnet.com/article/20061933/
そもそもなぜPHPは大規模に向かないと言われるの?
A. 昔PHPという言語が安定してなかったから。
勝手に運用時のパフォーマンスとかのことでPHPはダメっていうのかと思ったけど、違うんですね。
その昔、PHPの創生期のときにはPHPの言語仕様が固まっていなかったこともあり、PHP自体が不安定、
型も無く、プロジェクトが大きくなるのといろいろ大変!
…..ということがあったらしい。
もはや型もあるしこいうこと言われることもないのかな?
パフォーマンス
トランザクションをさばく
負荷対策
CPU負荷対策
サーバーはなぜ落ちるのか?
なぜ起きるのか?
PHPを動かすときにサーバーのCPUを使うが、
そのPHPの動きがCPUのキャパを超えたとき、オチる。。
負荷テストの方法
ツールを使うのが現実的みたい。
JMeterとか。
Tsungとか。
Gatlingとか。
感想
結局サーバのスケールアップが一番重要じゃないのかなぁ。。
PHPは負荷を減らすことしかできない。
もしくはロードバランサー時のセッション管理をDBに移すとか。
参考
https://support.xserver.ne.jp/faq/service_hp_wp_measures_againstload.php
最近のコメント