2013-03-31 8 views
25

उन 2 फ़ील्ड के बीच क्या अंतर है? :अपाचे बेंच: सभी समवर्ती अनुरोधों में मीन बनाम मीन

  • अनुरोध के अनुसार समय (मतलब)
  • अनुरोध के अनुसार समय (मतलब है, सभी समवर्ती अनुरोधों के पार)

उनमें से प्रत्येक की गणना कैसे की जाती है?

नमूना आउटपुट:

Time per request:  3953.446 [ms] (mean) 
Time per request:  39.534 [ms] (mean, across all concurrent requests) 

क्यों ज्यादा अंतर नहीं है?

+3

देखें http://serverfault.com/questions/274252/apache-ab-please-explain-the-output – Kevin

उत्तर

16

यह आपके इनपुट को देखने में सहायक होगा, लेकिन मुझे विश्वास है कि आउटपुट आपको बता रहा है कि समवर्ती अनुरोध करने के लिए कोई समय बचत नहीं है।

अनुरोध के अनुसार समय (मतलब) आप समय यह एक समवर्ती पर कार्रवाई करने के अनुरोधों के समूह के लिए ले लिया की औसत राशि बताता है।

अनुरोध के अनुसार समय (मतलब है, सभी समवर्ती अनुरोधों के पार) आप समय यह अपने आप में कार्रवाई करने के लिए एक एकल अनुरोध के लिए ले लिया की औसत राशि बताता है।

यदि आपने समसामयिक अनुरोधों को संसाधित किया है, तो इसमें 3 9 53.446ms लगे।

आप उन्हें व्यक्तिगत रूप से संसाधित है, यह 39.534ms * 100 = 3953.4ms

एक ही नंबर ले जाएगा। समवर्ती अनुरोध करने के लिए कोई समय बचत नहीं है (कम से कम आपके द्वारा परीक्षण किए गए अनुरोधों की कुल संख्या के लिए)।

+1

मुझे नहीं लगता कि समवर्ती अनुरोधों से त्वरित व्यक्तिगत अनुरोध कैसे होंगे। समय प्रति अनुरोध (मतलब, सभी समवर्ती अनुरोधों में) केवल मुझे बताता है कि समवर्ती समवर्ती अनुरोधों को कैसे प्रबंधित किया जाता है। – Saab

11

यहां एबी के परीक्षण परिणाम का एक उदाहरण है। मैं अनुरोध करता हूं कि समवर्ती अनुरोधों के साथ।

C:\>ab -d -e a.csv -v 1 -n 1000 -c 3 http://www.example.com/index.aspx 
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0 
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ 
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/ 

Benchmarking www.m-taoyuan.tw (be patient) 
Completed 100 requests 
Completed 200 requests 
Completed 300 requests 
Completed 400 requests 
Completed 500 requests 
Completed 600 requests 
Completed 700 requests 
Completed 800 requests 
Completed 900 requests 
Finished 1000 requests 


Server Software:  Microsoft-IIS/6.0 
Server Hostname:  www.m-taoyuan.tw 
Server Port:   80 

Document Path:   /index.aspx 
Document Length:  25986 bytes 

Concurrency Level:  3 
Time taken for tests: 25.734375 seconds 
Complete requests:  1000 
Failed requests:  0 
Write errors:   0 
Total transferred:  26372000 bytes 
HTML transferred:  25986000 bytes 
Requests per second: 38.86 [#/sec] (mean) 
Time per request:  77.203 [ms] (mean) 
Time per request:  25.734 [ms] (mean, across all concurrent requests) 
Transfer rate:   1000.72 [Kbytes/sec] received 

Connection Times (ms) 
       min mean[+/-sd] median max 
Connect:  0 1 4.4  0  15 
Processing: 62 75 9.1  78  109 
Waiting:  46 64 8.0  62  109 
Total:   62 76 9.3  78  109 

आप देख सकते हैं, वहाँ दो प्रति अनुरोध क्षेत्र समय कर रहे हैं।

  • अनुरोध के अनुसार समय (मतलब)
  • अनुरोध के अनुसार समय (मतलब है, सभी समवर्ती अनुरोधों के पार)

की जांच करें क्षेत्र पहली बार परीक्षण के लिए ले जाया समय। मान 25.734375 सेकेंड है जो 25734.375 एमएस है।

हम द्वारा 25734.375 एमएस विभाजित हैं, तो आप 25.734 [एमएस] जो सटीक अनुरोध के अनुसार समय है (मतलब है, सभी समवर्ती अनुरोधों के पार) फ़ील्ड का मान मिलता है।

अनुरोध के अनुसार समय के लिए (मतलब), मूल्य 77.203 [एमएस] है। मान से थोड़ा अधिक समय है (अनुरोध, सभी समवर्ती अनुरोधों में)। इसका कारण यह है कि (माध्य) प्रत्येक विशिष्ट अनुरोध द्वारा गिना जाता है और इसकी औसत समय की गणना करता है।

मुझे आपको एक साधारण उदाहरण दें।

मान लें कि हम समवर्ती कनेक्शन के साथ अनुरोध करती हैं। परीक्षण के लिए लिया गया समय 90ms होगा और प्रत्येक अनुरोध 40ms, 50ms, 30ms होगा। तो इन दो का मूल्य क्या है प्रति अनुरोध?

  • अनुरोध के अनुसार समय (मतलब) = (40 + 50 + 30)/3 = 40ms
  • अनुरोध के अनुसार समय (मतलब है, सभी समवर्ती अनुरोधों के पार) = 90/3 = 30ms

आशा है की तुम समझ सकते हो। :)

+1

यह एक बहुत अच्छी व्याख्या है, धन्यवाद। – tompave

संबंधित मुद्दे