लोड परीक्षण वेब सर्वर को घेराबंदी बेंचमार्किंग टूल के साथ


यह जानकर कि आपके वेबसाइट या एप्लिकेशन के भविष्य के विकास की योजना बनाने के लिए तनाव के दौरान आपका वेब सर्वर कितना ट्रैफिक संभाल सकता है। घेराबंदी नामक टूल का उपयोग करके, आप अपने सर्वर पर लोड परीक्षण चला सकते हैं और देख सकते हैं कि आपका सिस्टम विभिन्न परिस्थितियों में कैसे कार्य करता है।

आप ट्रांसफर किए गए डेटा, रिस्पांस टाइम, ट्रांजेक्शन रेट, थ्रूपुट, कंसीडर और कितनी बार सर्वर ने रिस्पॉन्स दिया, इसका मूल्यांकन करने के लिए आप घेराबंदी का उपयोग कर सकते हैं। टूल में तीन मोड होते हैं, जिसमें यह काम कर सकता है - प्रतिगमन , इंटरनेट सिमुलेशन और जानवर बल

लाल

लिनक्स में घेराबंदी HTTP भार परीक्षण उपयोगिता स्थापित करना

घेराबंदी मल्टी प्लेटफ़ॉर्म है और इसे Ubuntu/Debian और CentOS/RHEL डिस्ट्रिब्यूशन के तहत इंस्टॉल करके निम्न आदेशों का उपयोग किया जा सकता है।

डीबिन/उबंटू के तहत घेराबंदी स्थापित करने के लिए, आप चला सकते हैं:

$ sudo apt install siege

CentOS/RHEL के लिए, आपको इसके साथ घेराबंदी स्थापित करने के लिए रिपॉजिटरी स्थापित करने और सक्षम करने की आवश्यकता है:

# yum install epel-release
# yum install siege

वैकल्पिक रूप से, आप स्रोत से घेराबंदी का निर्माण कर सकते हैं। उस उद्देश्य के लिए आपको निर्माण-आवश्यक और विकास पैकेज स्थापित करने होंगे।

$ sudo apt install build-essential       #Ubuntu/Debian
# yum groupinstall 'Development Tools'   #CentOS/RHEL

फिर आप wget कमांड का उपयोग करके घेराबंदी डाउनलोड कर सकते हैं और दिखाए गए स्रोतों से इंस्टॉल कर सकते हैं।

$ wget http://download.joedog.org/siege/siege-latest.tar.gz
$ tar -zxvf siege-latest.tar.gz
$ cd siege-*/
$ sudo ./configure --prefix=/usr/local --with-ssl=/usr/bin/openssl
$ sudo make && make install

लिनक्स में सीज HTTP लोड टेस्टिंग यूटिलिटी को कॉन्फ़िगर करना

एक बार जब आपने इंस्टॉलेशन पूरा कर लिया है, तो आप अपनी घेराबंदी कॉन्फ़िगरेशन फ़ाइल को समायोजित कर सकते हैं। यह /etc/siege/siegerc में स्थित है। यदि आपने स्रोत से पैकेज बनाने का निर्णय लिया है, तो आपको चलना होगा:

$ sudo siege.config

यह आपके उपयोगकर्ता के घर में स्थित siege.conf फ़ाइल उत्पन्न करेगा ~/.siege/siege.conf ।

फ़ाइल की सामग्री कुछ इस तरह दिखनी चाहिए। ध्यान दें कि मुझे लॉगफ़ाइल और समय निर्देश हैं:

# cat siegerc |egrep -v "^$|#"
logfile = $(HOME)/var/log/siege.log
verbose = false
color = on
quiet = false
show-logfile = true
logging = false
gmethod = HEAD
parser = true
nofollow = ad.doubleclick.net
nofollow = pagead2.googlesyndication.com
nofollow = ads.pubsqrd.com
nofollow = ib.adnxs.com
limit = 255
protocol = HTTP/1.1
chunked = true
cache = false
connection = close
concurrent = 25
time = 1M
delay = 0.0
internet = false
benchmark = false
accept-encoding = gzip, deflate
url-escaping = true
unique = true

वर्तमान कॉन्फ़िगरेशन के साथ, घेराबंदी 1 मिनट में 25 समवर्ती उपयोगकर्ताओं की नकल करेगा।

अब आप अपनी घेराबंदी चलाने के लिए तैयार हैं।

परीक्षण वेबसाइट लोड घेराबंदी बेंचमार्किंग उपयोगिता के साथ

चलाना घेराबंदी काफी आसान है, आपको केवल उस वेबसाइट को निर्दिष्ट करने की आवश्यकता है जिसे आप इस तरह से परीक्षण करना चाहते हैं:

# siege example.com

यदि उपलब्धता 100% पर रहती है और कोई विफल कनेक्शन नहीं हैं, तो आपके सिस्टम ने अच्छा किया और कोई समस्या नहीं थी। आपको रिस्पांस टाइम पर भी नजर रखनी चाहिए।

आप फ़ाइल से उन्हें पढ़ने के लिए घेराबंदी सेट करके कई URL का परीक्षण कर सकते हैं। आप इस तरह से /usr/local/etc/urls.txt URL का वर्णन कर सकते हैं:

अब फ़ाइल से URL का परीक्षण करने के लिए घेराबंदी बताने के लिए, इस तरह -f विकल्प का उपयोग करें:

# siege -f /usr/local/etc/urls.txt

आप कमांड लाइन विकल्पों का भी उपयोग कर सकते हैं, यदि आप कॉन्फ़िगरेशन फ़ाइल में वर्णित लोगों से विभिन्न सेटिंग्स आज़माना चाहते हैं।

  • -C – specify your own configuration file.
  • -q – suppresses siege’s output.
  • -g – GET, pull down HTTP headers and display the transaction. Useful for debugging.
  • -c – the number of concurrent users, default is 10.
  • -r – how many times to run the test.
  • -t – how much time to run the test. You can specify S, M, or H ex: –time=10S for 10 seconds.
  • -d – random delay before each request.
  • -b – no delays between requests.
  • -i – user simulation. Uses to hit random URLs.
  • -f – test URLs from specified file.
  • -l – log file.
  • -H – Add a header to request.
  • -A – specify a user agent.
  • -T – Sets Content-Type in request.
  • --no-parser – NO PARSER, turn off the HTML page parser.
  • --no-follow – do not follow HTTP redirects.

घेराबंदी उच्च भार के तहत आपके सिस्टम की विश्वसनीयता को मापने के लिए एक शक्तिशाली उपकरण है। यह वेब डेवलपर्स द्वारा अपने कोड का परीक्षण करने के लिए उपयोग किया जा सकता है जब साइट ड्यूरेस के अधीन होती है। मूल्यांकन के दौरान परीक्षण किए गए सर्वर अप्राप्य हो सकते हैं, इसलिए आपको हमेशा सावधानी के साथ अपने परीक्षण चलाने चाहिए।