أداة قياس HTTP الإطار الأكثر حداثة.
F:rewrk> rewrk -h http://127.0.0.1:5000 -t 12 -c 60 -d 5s
Benchmarking 60 connections @ http://127.0.0.1:5000 for 5 seconds
Latencies:
Avg Stdev Min Max
3.27ms 0.40ms 1.95ms 9.39ms
Requests:
Total: 91281 Req/Sec: 18227.81
Transfer:
Total: 1.13 MB Transfer Rate: 231.41 KB/Sec
مع علم الاختياري
+ --------------- + --------------- +
| Percentile | Avg Latency |
+ --------------- + --------------- +
| 99.9% | 6.88ms |
| 99% | 5.62ms |
| 95% | 4.62ms |
| 90% | 4.24ms |
| 75% | 3.78ms |
| 50% | 3.49ms |
+ --------------- + --------------- +
يمتد الدافع وراء هذا المشروع من رؤية نفق المطورين على معايير مثل TechEmpower التي تستخدم أداة القياس التي تسمى WRK.
تكمن المشكلة في أن WRK يتعامل فقط مع بعض مواصفات HTTP وهي متحيزة تمامًا تجاه الأطر والخوادم التي يمكن أن تستفيد من أنابيب HTTP/1 التي لم تعد ممكّنة في معظم المتصفحات أو العملاء الحديثة ، وهذا يمكن أن يعطي مجموعة غير عادلة وغير معقولة للغاية عند مقارنة الأطر كما هي في الأعلى ببساطة في استخدام عملية لا تستخدم الآن بشكل كبير.
هذا هو المكان الذي يأتي فيه Rewrk ، تم تصميم هذا المعيار على رأس واجهة برمجة تطبيقات عميل Hyper ويجلب معه العديد من المزايا والأساليب الأكثر واقعية للقياس.
الاستخدام بسيط نسبيًا ، إذا كان لديك ثنائي مجمع ، ما عليك سوى تشغيل CLI.
إليك مثال لإنتاج المعيار التالي:
-c 256 )--http2 )-t 12 )-d 15s )--pct )http://127.0.0.1:5000 ( -h http://127.0.0.1:5000 ) أمر CLI:
rewrk -c 256 -t 12 -d 15s -h http://127.0.0.1:5000 --http2 --pct
لإحضار قائمة المساعدة ، قم ببساطة بتشغيل rewrk --help لإنتاج هذا:
USAGE:
rewrk.exe [FLAGS] [OPTIONS] --duration <duration> --host <host>
FLAGS:
--help Prints help information
--http2 Set the client to use http2 only. (default is http/1) e.g. '--http2'
--pct Displays the percentile table after benchmarking.
-V, --version Prints version information
OPTIONS:
-c, --connections <connections> Set the amount of concurrent e.g. '-c 512' [default: 1]
-d, --duration <duration> Set the duration of the benchmark.
-h, --host <host> Set the host to bench e.g. '-h http://127.0.0.1:5050'
-t, --threads <threads> Set the amount of threads to use e.g. '-t 12' [default: 1]
بناء من المصدر بسيط بشكل لا يصدق ، فقط تأكد من أن لديك نسخة مستقرة من Rust مثبت قبل البدء.
مع تثبيت البضائع
cargo install rewrk --git https://github.com/ChillFish8/rewrk.gitمع تشغيل البضائع
cargo run --release -- <enter flags here>مع بناء البضائع
cargo build --release