PHP 開発者およびスタートアップ チームの技術開発者として、開発フレームワークの選択は非常に難しいものです。
ThinkPHP では、訓練機関を卒業したばかりの開発者を採用することで始めることができますが、パフォーマンスとポストコードを切り離すのは頭の痛い問題です。ただし、多くの専門家がすでに道を切り開いているため、サードパーティ関数の多くは自分で記述する必要はありません。
Laravel を使用すると、Legend は非常に快適に記述でき、十分なスケーラビリティを備えていますが、学習コストが少し高くなります。若手開発者にフレームワークの学習に半月も与えることはできません。そして、Laravel のパフォーマンスがあまり良くなく、ドキュメントもそれほど充実していないことが世界中で暴露されていると言われています。
Yii は構文が少し面倒で、フロントエンドとバックエンドのコードを分けるのが少し面倒ですが、パフォーマンスは非常に良く、すでに多くの国内大手企業で使用されています。 、質問に回答する専門家をすぐに見つけることができます。
簡単な性能評価をした方が良いです
性能の良いものを選んでおけば間違いありません。パフォーマンステスト
テスト時期: 2016 年 5 月 6 日
テストツール: siege (MAC システムの ab には常にエラー pr_socket_recv: Connection reverse bypeer (54) が発生するため、siege を選択しました)
テストマシン: MacPro Core i5 プロセッサ/8GB メモリ/256GB SSD フラッシュメモリ
テスト環境:Apache PHP5.6
フレームワークのバージョン: ThinkPHP 3.2.3 Laravel 5.2 Yii2.0.5
テスト原理: 各テストは 5 回ループし、中程度のデータを取得します
追記: すべてのプロジェクトはサブディレクトリに配置されます
結果の説明
テストを開始します
コントローラーを追加し、コントローラーで HelloWorld を 10,000 回入力してください
同時実行 50 ループ 10 回:
最初に思いついたのは ThinkPHP でしたが、これは問題なさそうでした
リーリーそれでは、ララブル、うーん、少しがっかりしました
リーリー結局、試合前はYiiについてもっと楽観的でした
リーリー同時実行 200 ループ 10 回:
まずはThinkPHPです
リーリーその後、Laravelが登場しました
リーリー最後はYiiです
リーリー予想外に、最適化を行わないと、ThinkPHP が最も速く、Yii がわずかに速く、Laravel は不安定なペースでテストを終了しました。結果はやや予想外ですが、上記のテストは開発環境のみを表しています。フレームワークはオンライン環境をシミュレートするために以下で最適化されます。
最適化フレームワーク
ThinkPHP:
リーリーララベル:
リーリーゆい:
YII_DEBUG が false に変更されました
作曲家ダンプ自動ロード -o
同時実行 200 ループ 10 回:
PHP について考える
リーリーララベル:
リーリーいい:
リーリー奇妙なのは、フレームワークがデバッグ モードをオフにすると、失敗が増えることです。ただし、単純な最適化の後、Laravel のパフォーマンスは大幅に向上していることは明らかですが、それでも他の 2 つのフレームワークよりも低いです。
結論
テスト中、私は落ち込んで、自分の世界観が崩壊するまで崩壊したと感じました。
ThinkPHP のパフォーマンスは Yii の 2 倍、Laravel のほぼ 4 倍です
Yii のパフォーマンスは比較的平凡ですが、テストでは、他の 2 つのフレームワークよりもリクエストの失敗が少ないことが明らかです
Laravel は依然としてエレガントですが、そのパフォーマンスは心配です。ネチズンの言葉で表現するのが適切です。学ぶ者は生き、それを使用する者は死ぬ
ついに
私のプロジェクトは、コンポーザーの力のおかげで、開発に非常にスムーズに進み、最終的には 200 の同時実行数と 10 サイクルの自作フレームワークのデータを添付しました。オープンソースですが、更新はかなり忙しいです。github で PPPHP を検索して、一緒にフレームワークを構築してください。
リーリー