Το Siege είναι ένα εργαλείο δοκιμών φόρτου και συγκριτικής αξιολόγησης HTTP/HTTPS για δοκιμή διακομιστών υπό υψηλή ζήτηση.
Βασική Χρήση
# Benchmark με 10 ταυτόχρονες συνδέσεις για 1 λεπτό
siege -c 10 -t 1m https://example.com/
Κοινές Επιλογές Γραμμής Εντολών
| Επιλογή | Σημαία | Περιγραφή |
|---|---|---|
-c N |
--concurrent=N |
Αριθμός ταυτόχρονων προσομοιωμένων χρηστών |
-t MINm |
--time=MINm |
Συνολική διάρκεια δοκιμής (π.χ. 30s, 5m, 1h) |
-r N |
--reps=N |
Αριθμός αιτημάτων ανά χρήστη πριν τον τερματισμό |
-b |
--benchmark |
Λειτουργία benchmark (μηδενική καθυστέρηση μεταξύ αιτημάτων) |
-i |
--internet |
Κλήση διευθύνσεων URL από αρχείο με τυχαία σειρά |
-f <file> |
--file=<file> |
Ανάγνωση λίστας διευθύνσεων URL από αρχείο |
-H <hdr> |
--header=<hdr> |
Προσθήκη προσαρμοσμένης κεφαλίδας HTTP στα αιτήματα |
Δοκιμή με Αρχείο Πολλαπλών URLs
Δημιουργήστε το urls.txt:
https://example.com/
https://example.com/api/items
https://example.com/about
Εκτέλεση τυχαίας προσομοίωσης διαδικτύου στις διευθύνσεις URL:
siege -i -c 25 -t 2m -f urls.txt
Επεξήγηση Μετρικών Εξόδου
- Availability: Ποσοστό επιτυχώς εξυπηρετημένων αιτημάτων (πρέπει να είναι 100%).
- Elapsed time: Συνολική διάρκεια εκτέλεσης της δοκιμής.
- Transaction rate: Αιτήματα ανά δευτερόλεπτο (RPS).
- Throughput: Megabytes διακινηθέντων δεδομένων ανά δευτερόλεπτο.
- Concurrency: Μέσος όρος ενεργών ταυτόχρονων συνδέσεων.