ホームページ  >  記事  >  PHPフレームワーク  >  Thinkphpとlaravelのパフォーマンス比較

Thinkphpとlaravelのパフォーマンス比較

尚
オリジナル
2019-12-24 15:03:467523ブラウズ

Thinkphpとlaravelのパフォーマンス比較

ThinkPHP は、高速で互換性があり、シンプルで軽量な国産 PHP 開発フレームワークです。Apache2 オープンソース契約に基づいてリリースされています。Struts 構造から移植され、改良され、完成されています。また、多くの優れた外国のフレームワークとパターンを採用し、オブジェクト指向開発構造と MVC パターンを使用し、Struts と TagLib (タグ ライブラリ)、RoR の ORM マッピング、ActiveRecord パターンのアイデアを統合します。

Laravel は、シンプルでエレガントな PHP Web 開発フレームワーク (PHP Web フレームワーク) です。ヌードルのような乱雑なコードから解放され、完璧なネットワーク APP を構築するのに役立ち、コードの各行を簡潔かつ表現力豊かにすることができます。

thinkphp と laravel のパフォーマンス比較:

パフォーマンス テスト

テスト時間: 2016 年 5 月 6 日

テスト ツール: siege (MAC システムのため) ab では常にエラー pr_socket_recv: ピア (54) によって接続がリセットされました。そのため、siege を選択しました)

テスト マシン: MacPro Core i5 プロセッサ/8GB メモリ/256GB SSD フラッシュ メモリ

テスト環境: Apache PHP5.6

フレームワークのバージョン: ThinkPHP 3.2.3 Laravel 5.2

テスト原則: 各テストは中程度のデータを取得して 5 回ループします

補足説明: すべてのプロジェクトはすべてサブディレクトリに配置

結果の説明

トランザクション: 2119 ヒット処理されたリクエストの合計数

可用性: 96.85 % 可用性

経過時間: 9.74秒 実行時間

データ転送: 1.31 MB データ転送量

応答時間: 0.60 秒応答時間

トランザクション レート: 217.56 トランス/秒1 秒あたりの処理効率

スループット: 0.13 MB/秒 1 秒あたりのデータ処理数

同時実行数: 130.28 同時実行数

成功したトランザクション: 2162 成功したリクエスト

失敗したトランザクション: 69 失敗したリクエスト

最長トランザクション: 2.85 最長単一リクエスト

最短トランザクション: 0.01 最短単一リクエスト

テストを開始

コントローラーを増やし、HelloWorld に 10,000 回入るコントローラー

同時実行 50 ループを 10 回:

最初に思いついたのは ThinkPHP で、これは問題ないようでした

トランザクション: 500 ヒット

可用性: 100.00 %

経過時間: 2.81 秒

データ転送: 52.45 MB

応答時間: 0.26 秒

トランザクション レート: 177.94 トランス/sec

スループット: 18.67 MB/秒

同時実行性: 47.10

成功したトランザクション: 500

失敗したトランザクション: 0

最長トランザクション: 0.48

最短トランザクション: 0.03

次に Laravle:

同時実行 200 ループを 10 回:

最初は ThinkPHP

トランザクション数: 1977 ヒット

可用性: 98.85 %

経過時間: 10.03 秒

データ転送: 207.40 MB

応答時間: 0.95 秒

トランザクション レート: 197.11 トランス/秒

スループット: 20.68 MB/秒

#同時実行性: 187.68

成功したトランザクション: 1977

失敗したトランザクション: 23

最長トランザクション: 1.22

最短トランザクション: 0.02

その後、Laravel

トランザクション数: 1890ヒット数

可用性: 94.50 %

経過時間: 51.85 秒

データ転送: 198.27 MB

応答時間: 4.88 秒

トランザクション レート: 36.45 トランス/秒

スループット: 3.82 MB/秒

同時実行性: 178.00

成功したトランザクション: 1890

失敗したトランザクション: 110

最長トランザクション: 26.01

最短トランザクション: 0.07

意外なことに、最適化なしでは、速度は ThinkPHP が最も速く、Yii がわずかに上回っており、Laravel は でテストを終了しました。たどたどしいペース。結果は少々予想外ですが、上記のテストは開発環境のみを表しており、以下ではオンライン環境をシミュレートするためにフレームワークを最適化します。

最適化フレームワーク

ThinkPHP:

APP_DEBUG が false に変更されます

Laravel:

APP_DEBUG が false に変更されます

php 職人ルート:キャッシュ

php 職人最適化

php 職人設定:キャッシュ

composer dumpautoload -o

同時実行 200 ループ 10 回:

ThinkPHP

トランザクション数: 1655 ヒット

可用性: 82.75 %

経過時間: 8.21 秒

データ転送数: 173.62 MB

応答時間: 0.69 秒

トランザクション レート: 201.58 トランス/秒

スループット: 21.15 MB/秒

#同時実行性: 139.29

成功したトランザクション: 1655

失敗したトランザクション: 345

最長トランザクション: 7.83

最短トランザクション: 0.00

Laravel:

トランザクション: 1520 ヒット

可用性: 76.00 %

経過時間: 34.95 秒

データ転送: 159.45 MB

応答時間: 3.15 秒

トランザクション レート: 43.49 トランス/秒

スループット: 4.56 MB/秒

同時実行性: 136.84

成功したトランザクション: 1520

失敗したトランザクション: 480

最長トランザクション: 19.18

最短トランザクション: 0.00

奇妙なことに、フレームワークがデバッグ モードをオフにすると、 、比較的大きなエラーが発生し、失敗が多くなります。ただし、単純な最適化の後、Laravel のパフォーマンスは大幅に向上していることは明らかですが、それでも他の 2 つのフレームワークよりも低いです。 ######結論は:###

ThinkPHP のパフォーマンスは Laravel のほぼ 4 倍です。

php 中国語 Web サイト、無料の laravel 入門チュートリアル が多数あり、オンラインで学習することを歓迎します。

以上がThinkphpとlaravelのパフォーマンス比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。