試験条件
両方のフレームワークで、ビューを使用しませんでしたが、コントローラー内でのみ動作します。 DB:ローカルホスト上のPostgresql 8.3。 両方のコントローラーの形式は最も単純です。
最初のテストでは、333回の反復で単純なサイクルがあり、その中で、次の要求によってデータベースへの呼び出しが開始されました。
SELECT *
FROM tbl_clients
JOIN tbl_clients_recvisites ON tbl_clients.clientid = tbl_clients_recvisites.clientid
JOIN tbl_recvisites ON tbl_clients_recvisites.recvisiteid = tbl_recvisites.recvisiteid
JOIN tbl_clients_contacts ON tbl_clients.clientid = tbl_clients_contacts.clientid
JOIN tbl_contacts ON tbl_clients_contacts.contactid = tbl_contacts.contactid
* This source code was highlighted with Source Code Highlighter .
さらに、両方のコントローラーに統合されたプロファイラーが含まれていました。
2番目のテストではApache JMeterを使用しました
テスト1-エミュレーションなしの純粋な合成
各フレームワークで、アクションを10回(10回[F5])繰り返し、アプリケーションの結果を記録しました(配信時間は考慮されません-PHPのみが動作します)。 表の結果:
コードイグナイター | 小花 | |
---|---|---|
1 | 26,6959 | 14,808 |
2 | 26,6049 | 14,178 |
3 | 27,5487 | 14,289 |
4 | 26.7427 | 13,845 |
5 | 26,6099 | 14,554 |
6 | 26,5644 | 14,381 |
7 | 26.9622 | 13,717 |
8 | 26.8828 | 14,242 |
9 | 27.2445 | 13,771 |
10 | 26.8514 | 14,479 |
平均 | 26.87 | 14.23 |
その他。 重要な注意 :Codeigniterはこのテストで1.74MBのRAM、Kohana-1.35MBを消費しました
テスト2-現実に迫る
このテストでは、JMeterを使用して同時リクエストをシミュレートしました。
テストは次のとおりでした。 各サブジェクト(CIおよびKOH)に対して、それぞれ5リクエストの10の同時フローが送信されました(フローで順番に実行されます)が、スタンドを「殺さない」ために、データベースクエリの数は333から9に削減されました(まあはい、3番が大好きです;))
最初のケースでは、フレームワークはプロファイラーデータを提供しましたが、送信されたバイトの量が異なることが判明したため、作業の完了後に両方のフレームワークが2バイト(「ok」)しか提供しない場合に2番目のシリーズのテストを実施しました。 各テストはJMeterで3回実行されました。
合計の表:
Codeigniter 9クエリプロファイラーが有効
平均(ミリ秒) | 分 (ミリ秒) | マックス (ミリ秒) | スループット(リクエスト/秒) | Kb / s |
---|---|---|---|---|
3880 | 2492 | 4370 | 2,5 | 57.17 |
3729 | 2538 | 4105 | 2.6 | 59.5 |
3760 | 2608 | 4263 | 2.6 | 59.04 |
Kohana 9プロファイラーリクエストが有効
平均(ミリ秒) | 分 (ミリ秒) | マックス (ミリ秒) | スループット(リクエスト/秒) | Kb / s |
---|---|---|---|---|
2495 | 1104 | 2990 | 3.9 | 27.62 |
2462 | 1239 | 2873 | 3.9 | 27.89 |
2485 | 933 | 2955 | 3.9 | 27.68 |
Codeigniter 9クエリ、output'ok '
平均(ミリ秒) | 分 (ミリ秒) | マックス (ミリ秒) | スループット(リクエスト/秒) | Kb / s |
---|---|---|---|---|
3749 | 2778 | 4241 | 2.6 | 0.01 |
3691 | 2187 | 4111 | 2.6 | 0.01 |
3776 | 3041 | 4208 | 2.6 | 0.01 |
Kohana 9検索、output'ok '
平均(ミリ秒) | 分 (ミリ秒) | マックス (ミリ秒) | スループット(リクエスト/秒) | Kb / s |
---|---|---|---|---|
2451 | 1035 | 2870 | 3.9 | 0.01 |
2445 | 997 | 2924 | 3.9 | 0.01 |
2448 | 1266 | 2883 | 3.9 | 0.01 |
これらの表からわかるように、アプリケーションの操作中に指定されたバイト数は、何の影響も及ぼしませんでした。
結論
誰もが自分自身で結論を出し、私はそのような類似した、しかし同時に異なるフレームワークをテストすることにしました。 私自身にとって、私はそれを作ったようです。
いずれの場合も、各作品に最適なツールがあることを忘れないでください...