Synopsis
ab [ -A yetkilendirme-kullanıcıadı:parola ] [ -b pencereboyutu ] [ -B yerel-adres ] [ -c eşzamanlılık ] [
-C çerez-adı=değer ] [ -d ] [ -e csv-dosyası ] [ -E istemci-sertifikası dosyası ] [ -f protokol ]
[ -g gnuplot-dosyası ] [ -h ] [ -H özel-üstbilgi ] [ -i ] [ -k ] [ -l ] [ -m HTTP-yöntemi ] [ -n
istekler ] [ -p POST-dosyası ] [ -P vekil-yetkilendirme-kullanıcıadı:parola ] [ -q ] [ -r ] [ -s zamanaşımı ]
[ -S ] [ -t zamansınırı ] [ -T içerik-türü ] [ -u PUT-dosyası ] [ -v ayrıntıdüzeyi] [ -V ] [ -w ] [
-x <table>-öznitelikleri ] [ -X vekil[:port] ] [ -y <tr>-öznitelikleri ] [ -z <td>-öznitelikleri ] [
-Z şifreleme-paketi ] [http[s]://]makineadı[:port]/yol
Summary
ab, Apache Hiper Metin Aktarım Protokolü (HTTP) sunucunuzun başarımını değerlendirmek (benchmarking) için kullanılan bir araçtır. Mevcut Apache kurulumunuzun nasıl bir performans gösterdiğine dair bir izlenim vermek için tasarlanmıştır. Bu araç, özellikle Apache kurulumunuzun saniyede kaç isteğe yanıt verebildiğini gösterir.
Options
-A yetkilendirme-kullanıcıadı:parola Sunucuya TEMEL (BASIC) Kimlik Doğrulama bilgilerini sağlar. Kullanıcı adı ve parola tek bir : ile ayrılır ve ağ üzerinden base64 ile kodlanmış olarak gönderilir. Bu dizgi, sunucunun buna ihtiyacı olup olmadığına (yani, 401 kimlik doğrulaması gerekiyor yanıtı gönderip göndermediğine) bakılmaksızın gönderilir.
-b pencereboyutu TCP gönderme/alma tampon belleğinin bayt cinsinden boyutu.
-B yerel-adres Giden bağlantılar yapılırken bağlanılacak (bind) adres.
-c eşzamanlılık Aynı anda gerçekleştirilecek çoklu istek sayısı. Varsayılan olarak aynı anda tek bir istektir.
-C çerez-adı=değer İsteğe bir Cookie: satırı ekler. Bağımsız değişken genellikle ad=değer çifti biçimindedir. Bu alan yinelenebilir.
-d: "XX [ms] içinde karşılanan yüzde tablosu"nu görüntülemez. (eski sistem desteği).
-e csv-dosyası Her bir yüzde için (%1'den %100'e kadar) bu istek yüzdesine hizmet edilmesinin ne kadar sürdüğünü (milisaniye cinsinden) içeren virgülle ayrılmış değerler (CSV) dosyası yazar. Sonuçlar zaten gruplandırılmış (binned) olduğundan bu dosya genellikle 'gnuplot' dosyasından daha yararlıdır.
-E istemci-sertifikası-dosyası Bir SSL web sitesine bağlanırken, sunucuyla kimlik doğrulaması yapmak için PEM formatında sağlanan istemci sertifikasını kullanır. Dosyanın istemci sertifikasını, ardından ara sertifikaları ve ardından özel anahtarı içermesi beklenir. Sürüm 2.4.36 ve sonrasında mevcuttur.
-f protokol SSL/TLS protokolünü belirtir (SSL2, SSL3, TLS1, TLS1.1, TLS1.2 veya ALL). TLS1.1 ve TLS1.2 desteği 2.4.4 ve sonraki sürümlerde mevcuttur.
-g gnuplot-dosyası Ölçülen tüm değerleri bir 'gnuplot' veya TSV (sekme ile ayrılmış değerler) dosyası olarak yazar. Bu dosya Gnuplot, IDL, Mathematica, Igor veya Excel gibi programlara kolayca aktarılabilir. Etiketler dosyanın ilk satırındadır.
-h: Kullanım bilgisini görüntüler.
-H özel-üstbilgi İsteğe fazladan üstbilgiler (headers) ekler. Bağımsız değişken genellikle iki nokta üst üste ile ayrılmış bir alan-değer çifti içeren geçerli bir üstbilgi satırı biçimindedir (örneğin, "Accept-Encoding: zip/zop;8bit").
-i: GET yerine HEAD istekleri yapar.-k: HTTP KeepAlive özelliğini etkinleştirir, yani tek bir HTTP oturumu içinde birden fazla istek gerçekleştirir. Varsayılan olarak KeepAlive kapalıdır.-l: Yanıtların uzunluğu sabit değilse hataları bildirmez. Bu özellik dinamik sayfalar için yararlı olabilir. Sürüm 2.4.7 ve sonrasında mevcuttur.
-m HTTP-yöntemi İstekler için özel HTTP yöntemi (HTTP method). Sürüm 2.4.10 ve sonrasında mevcuttur.
-n istekler Başarım değerlendirme oturumu için gerçekleştirilecek istek sayısı. Varsayılan değer, genellikle temsil edici olmayan başarım değerlendirme sonuçlarına yol açan tek bir isteğin gerçekleştirilmesidir.
-p POST-dosyası POST edilecek verileri içeren dosya. -T seçeneğini de ayarlamayı unutmayın.
-P vekil-yetkilendirme-kullanıcıadı:parola Yol üzerindeki bir vekil sunucuya (proxy) TEMEL (BASIC) Kimlik Doğrulama bilgilerini sağlar. Kullanıcı adı ve parola tek bir : ile ayrılır ve ağ üzerinden base64 ile kodlanmış olarak gönderilir. Bu dizgi, vekil sunucunun buna ihtiyacı olup olmadığına (yani, 407 vekil sunucu kimlik doğrulaması gerekiyor yanıtı gönderip göndermediğine) bakılmaksızın gönderilir.
-q: 150'den fazla istek işlenirken, ab aracı standart hata çıktısında (stderr) yaklaşık her %10'da veya 100 istekte bir ilerleme sayısını çıktı olarak verir. -q bayrağı bu mesajları bastıracaktır.-r: Soket alma hatalarında çıkış yapmaz.
-s zamanaşımı Soket zaman aşımına uğramadan önce beklenecek maksimum saniye sayısı. Varsayılan değer 30 saniyedir. Sürüm 2.4.4 ve sonrasında mevcuttur.
-S: Medyan ve standart sapma değerlerini görüntülemez; ortalama ve medyan arasındaki fark standart sapmanın bir veya iki katından fazla olduğunda uyarı/hata mesajlarını göstermez. Varsayılan olarak min/avg/max değerlerini görüntüler. (eski sistem desteği).
-t zamansınırı Başarım değerlendirmesi için harcanacak maksimum saniye sayısı. Bu, dahili olarak -n 50000 seçeneğini ifade eder. Sunucuyu belirli bir toplam süre içinde değerlendirmek için bunu kullanın. Varsayılan olarak bir zaman sınırı yoktur.
-T içerik-türü POST/PUT verileri için kullanılacak Content-type üstbilgisi, örneğin application/x-www-form-urlencoded. Varsayılan değer text/plain'dir.
-u PUT-dosyası PUT edilecek verileri içeren dosya. -T seçeneğini de ayarlamayı unutmayın.
-v ayrıntıdüzeyi Ayrıntı düzeyini ayarlar - 4 ve üzeri üstbilgiler hakkında bilgileri yazdırır, 3 ve üzeri yanıt kodlarını (404, 200 vb.) yazdırır, 2 ve üzeri uyarıları ve bilgileri yazdırır.
-V: Sürüm numarasını görüntüler ve çıkış yapar.-w: Sonuçları HTML tabloları halinde yazdırır. Varsayılan tablo, beyaz arka plana sahip iki sütun genişliğindedir.
-x
| -öznitelikleri | etiketi için öznitelik olarak kullanılacak dizgi.
-Z şifreleme-paketi SSL/TLS şifreleme paketini belirtir (Bkz. openssl ciphers) OutputAşağıdaki liste ab tarafından döndürülen değerleri açıklamaktadır: Server Software Varsa, başarılı ilk yanıtın sunucu HTTP üstbilgisinde döndürülen değer. Bu, üstbilgideki tüm karakterleri başlangıçtan ondalık değeri 32 olan bir karakterin (en belirgin şekilde: bir boşluk veya CR/LF) algılandığı noktaya kadar içerir. Server Hostname Komut satırında verilen DNS adı veya IP adresi Server Port ab aracının bağlandığı port. Komut satırında herhangi bir port belirtilmemişse, http için varsayılan olarak 80 ve https için 443 olacaktır. SSL/TLS Protocol İstemci ve sunucu arasında müzakere edilen protokol parametreleri. Bu yalnızca SSL kullanılıyorsa yazdırılacaktır. Document Path Komut satırı dizgisinden ayrıştırılan istek URI'si. Document Length Bu, başarıyla döndürülen ilk belgenin bayt cinsinden boyutudur. Test sırasında belge uzunluğu değişirse yanıt bir hata olarak kabul edilir. Concurrency Level Test sırasında kullanılan eşzamanlı istemci sayısı Time taken for tests Bu, ilk soket bağlantısının kurulduğu andan son yanıtın alındığı ana kadar geçen süredir Complete requests Alınan başarılı yanıtların sayısı Failed requests Hata olarak kabul edilen isteklerin sayısı. Sayı sıfırdan büyükse, bağlanma, okuma, yanlış içerik uzunluğu veya istisnalar (exceptions) nedeniyle başarısız olan isteklerin sayısını gösteren başka bir satır yazdırılacaktır. Write errors Yazma sırasında başarısız olan hata sayısı (kesik boru / broken pipe). Non-2xx responses Yanıt kodlarının 200 serisinde olmayan yanıtların sayısı. Tüm yanıtlar 200 ise bu alan yazdırılmaz. Keep-Alive requests Keep-Alive istekleriyle sonuçlanan bağlantı sayısı Total body sent Testin bir parçası olarak veri göndermek üzere yapılandırılmışsa, testler sırasında gönderilen toplam bayt sayısı. Test gönderilecek bir gövde (body) içermiyorsa bu alan atlanır. Total transferred Sunucudan alınan toplam bayt sayısı. Bu sayı esasen kablo üzerinden gönderilen bayt sayısıdır. HTML transferred Sunucudan alınan toplam belge baytı sayısı. Bu sayı HTTP üstbilgilerinde alınan baytları hariç tutar. Requests per second Bu, saniye başına istek sayısıdır. Bu değer, istek sayısının harcanan toplam süreye bölünmesiyle elde edilen sonuçtur. Time per request İstek başına harcanan ortalama süre. İlk değer concurrency * timetaken * 1000 / done formülüyle hesaplanırken, ikinci değer timetaken * 1000 / done formülüyle hesaplanır. Transfer rate totalread / 1024 / timetaken formülüyle hesaplanan aktarım hızı BugsSabit uzunlukta çeşitli statik olarak tanımlanmış tampon bellekler vardır. Komut satırı bağımsız değişkenlerinin, sunucudan gelen yanıt üstbilgilerinin ve diğer harici girdilerin yavaş ayrıştırılmasıyla (lazy parsing) birleştiğinde, bu durum sizin için sorun oluşturabilir. HTTP/1.x protokolünü tam olarak uygulamaz; yalnızca yanıtların bazı 'beklenen' biçimlerini kabul eder. strstr(3) işlevinin oldukça yoğun kullanımı profilde en üstte görünür, bu da bir performans sorununa işaret edebilir; yani sunucunun performansından ziyade ab performansını ölçüyor olabilirsiniz. Apache HTTP Server 2018-10-10 AB(1) |