ab - Công cụ đo điểm chuẩn máy chủ Apache HTTP
ab [ -A auth-username:password ] [ -b windowsize ] [ -B local-address ] [ -c concurrency ] [ -C cookie-name=value ] [ -d ] [ -e csv-file ] [ -E client-certificate file ] [ -f protocol ] [ -g gnuplot-file ] [ -h ] [ -H custom-header ] [ -i ] [ -k ] [ -l ] [ -m HTTP-method ] [ -n requests ] [ -p POST-file ] [ -P proxy-auth-username:password ] [ -q ] [ -r ] [ -s timeout ] [ -S ] [ -t timelimit ] [ -T content-type ] [ -u PUT-file ] [ -v verbosity] [ -V ] [ -w ] [ -x <table>-attributes ] [ -X proxy[:port] ] [ -y <tr>-attributes ] [ -z <td>-attributes ] [ -Z ciphersuite ] [http[s]://]hostname[:port]/path
ab là một công cụ để đo điểm chuẩn máy chủ Giao thức truyền siêu văn bản Apache (HTTP) của bạn. Nó được thiết kế để cho bạn ấn tượng về cách cài đặt Apache hiện tại của bạn hoạt động. Điều này đặc biệt cho bạn thấy có bao nhiêu yêu cầu mỗi giây mà cài đặt Apache của bạn có khả năng phục vụ.
Cung cấp thông tin xác thực BASIC Authentication cho máy chủ. Tên người dùng và mật khẩu được phân tách bằng một : và được gửi trên dây được mã hóa base64. Chuỗi được gửi bất kể máy chủ có cần nó hay không (tức là, đã gửi xác thực 401 cần thiết).
Kích thước của bộ đệm gửi/nhận TCP, tính bằng byte.
Địa chỉ để liên kết khi thực hiện các kết nối gửi đi.
Số lượng nhiều yêu cầu để thực hiện tại một thời điểm. Mặc định là một yêu cầu tại một thời điểm.
Thêm dòng Cookie: vào yêu cầu. Đối số thường ở dạng cặp tên=giá trị. Trường này có thể lặp lại.
Không hiển thị "phần trăm phân phát trong bảng XX [ms]". (hỗ trợ di sản).
Viết tệp giá trị được phân tách bằng dấu phẩy (CSV) chứa mỗi tỷ lệ phần trăm (từ 1% đến 100%) thời gian (tính bằng mili giây) để phân phát tỷ lệ phần trăm yêu cầu đó. Điều này thường hữu ích hơn tệp 'gnuplot'; vì kết quả đã được 'binned'.
Khi kết nối với trang web SSL, hãy sử dụng chứng chỉ ứng dụng khách được cung cấp ở định dạng PEM để xác thực với máy chủ. Tệp phải chứa chứng chỉ ứng dụng khách, tiếp theo là chứng chỉ trung gian, tiếp theo là khóa riêng. Có sẵn trong 2.4.36 trở lên.
Chỉ định giao thức SSL/TLS (SSL2, SSL3, TLS1, TLS1.1, TLS1.2 hoặc TẤT CẢ). Hỗ trợ TLS1.1 và TLS1.2 có sẵn trong 2.4.4 trở lên.
Ghi tất cả các giá trị đo được dưới dạng tệp 'gnuplot' hoặc TSV (Các giá trị riêng biệt theo tab). Tệp này có thể dễ dàng được nhập vào các gói như Gnuplot, IDL, Mathematica, Igor hoặc thậm chí là Excel. Các nhãn nằm trên dòng đầu tiên của tệp.
Hiển thị thông tin sử dụng.
Nối các tiêu đề bổ sung vào yêu cầu. Đối số thường ở dạng dòng tiêu đề hợp lệ, chứa cặp trường-giá trị được phân tách bằng dấu hai chấm (tức là, "Chấp nhận mã hóa: zip/zop;8bit" ).
Thực hiện các yêu cầu HEAD thay vì GET.
Bật tính năng HTTP KeepAlive, tức là, thực hiện nhiều yêu cầu trong một phiên HTTP. Mặc định là không có KeepAlive.
Không báo cáo lỗi nếu độ dài của các câu trả lời không cố định. Điều này có thể hữu ích cho các trang động. Có sẵn trong 2.4.7 trở lên.
Phương thức HTTP tùy chỉnh cho các yêu cầu. Có sẵn trong 2.4.10 trở lên.
Số lượng yêu cầu thực hiện cho phiên đo điểm chuẩn. Mặc định là chỉ thực hiện một yêu cầu duy nhất, điều này thường dẫn đến kết quả đo điểm chuẩn không mang tính đại diện.
Tệp chứa dữ liệu để POST. Cũng nhớ đặt -T.
Cung cấp thông tin đăng nhập Xác thực CƠ BẢN cho proxy trên đường đi. Tên người dùng và mật khẩu được phân tách bằng một : và được gửi trên dây được mã hóa base64. Chuỗi được gửi bất kể proxy có cần nó hay không (tức là, đã gửi yêu cầu xác thực proxy 407).
Khi xử lý hơn 150 yêu cầu, ab xuất ra số lượng tiến trình trên stderr cứ sau 10% hoặc 100 yêu cầu hoặc hơn. Cờ -q sẽ chặn các thông báo này.
Không thoát trên ổ cắm nhận lỗi.
Số giây tối đa để đợi trước khi ổ cắm hết thời gian chờ. Mặc định là 30 giây. Có sẵn trong 2.4.4 trở lên.
Không hiển thị giá trị trung bình và độ lệch chuẩn, cũng như không hiển thị thông báo cảnh báo/lỗi khi giá trị trung bình và giá trị trung bình cách nhau hơn một hoặc hai lần so với độ lệch chuẩn. Và mặc định cho các giá trị tối thiểu/trung bình/tối đa. (hỗ trợ di sản).
Số giây tối đa dành cho điểm chuẩn. Điều này có nghĩa là -n 50000 trong nội bộ. Sử dụng điều này để đánh giá máy chủ trong một khoảng thời gian cố định. Theo mặc định, không có giới hạn thời gian.
Tiêu đề kiểu nội dung để sử dụng cho dữ liệu POST/PUT, vd. application/x-www-form-urlencoding. Mặc định là văn bản/đơn giản.
File chứa dữ liệu để PUT. Cũng nhớ đặt -T.
Đặt mức độ chi tiết - 4 trở lên in thông tin trên tiêu đề, 3 trở lên in mã phản hồi (404, 200, v.v.), 2 và ở trên in cảnh báo và thông tin.
Hiển thị số phiên bản và thoát.
In ra kết quả trong bảng HTML. Bảng mặc định rộng hai cột, có nền trắng.
Chuỗi để sử dụng làm thuộc tính cho bảng. Các thuộc tính được chèn vào bảng tại đây.
Sử dụng máy chủ proxy cho các yêu cầu.
Chuỗi để sử dụng làm thuộc tính cho Chuỗi để sử dụng làm thuộc tính cho Chỉ định bộ mật mã SSL/TLS (Xem mã hóa openssl) Danh sách sau đây mô tả các giá trị được trả về bởi ab: Giá trị, nếu có, được trả về trong tiêu đề HTTP máy chủ của phản hồi thành công đầu tiên. Điều này bao gồm tất cả các ký tự trong tiêu đề từ đầu đến điểm mà một ký tự có giá trị thập phân là 32 (đáng chú ý nhất là: một khoảng trắng hoặc CR/LF) được phát hiện. Địa chỉ DNS hoặc IP được cung cấp trên dòng lệnh Cổng mà ab đang kết nối. Nếu không có cổng nào được cung cấp trên dòng lệnh, cổng này sẽ mặc định là 80 cho http và 443 cho https. Các tham số giao thức được thương lượng giữa máy khách và máy chủ. Điều này sẽ chỉ được in nếu SSL được sử dụng. URI yêu cầu được phân tích cú pháp từ chuỗi dòng lệnh. Đây là kích thước tính bằng byte của tài liệu được trả về thành công đầu tiên. Nếu độ dài tài liệu thay đổi trong quá trình kiểm tra, phản hồi được coi là lỗi. Số lượng khách hàng đồng thời được sử dụng trong quá trình thử nghiệm Đây là thời gian tính từ thời điểm kết nối ổ cắm đầu tiên được tạo cho đến thời điểm nhận được phản hồi cuối cùng Số phản hồi thành công nhận được Số lượng yêu cầu được coi là không thành công. Nếu số này lớn hơn 0, một dòng khác sẽ được in cho biết số lượng yêu cầu không thành công do kết nối, đọc, độ dài nội dung không chính xác hoặc ngoại lệ. Số lỗi không thành công trong quá trình ghi (đường ống bị hỏng). Số lượng câu trả lời không nằm trong chuỗi 200 mã phản hồi. Nếu tất cả các câu trả lời là 200, trường này sẽ không được in. Số lượng kết nối dẫn đến yêu cầu Keep-Alive Nếu được định cấu hình để gửi dữ liệu như một phần của quá trình kiểm tra, thì đây là tổng số byte được gửi trong quá trình kiểm tra. Trường này được bỏ qua nếu bài kiểm tra không bao gồm nội dung để gửi. Tổng số byte nhận được từ máy chủ. Con số này thực chất là số byte được gửi qua dây. Tổng số byte tài liệu nhận được từ máy chủ. Con số này không bao gồm các byte nhận được trong tiêu đề HTTP Đây là số lượng yêu cầu mỗi giây. Giá trị này là kết quả của việc chia số lượng yêu cầu cho tổng thời gian thực hiện Thời gian trung bình dành cho mỗi yêu cầu. Giá trị đầu tiên được tính theo công thức đồng thời * thời gian thực hiện * 1000/hoàn thành trong khi giá trị thứ hai được tính theo công thức thời gian thực hiện * 1000/hoàn thành Tốc độ truyền được tính theo công thức totalread/1024/timetaken Có nhiều bộ đệm được khai báo tĩnh có độ dài cố định. Kết hợp với việc lười phân tích cú pháp các đối số dòng lệnh, các tiêu đề phản hồi từ máy chủ và các đầu vào bên ngoài khác, điều này có thể khiến bạn khó chịu. Nó không triển khai HTTP/1.x đầy đủ; chỉ chấp nhận một số dạng phản hồi 'được mong đợi'. Việc sử dụng khá nhiều strstr(3) hiển thị trên cùng trong cấu hình, điều này có thể cho thấy vấn đề về hiệu suất; tức là, bạn sẽ đo lường hiệu suất ab chứ không phải của máy chủ.. . ĐẦU RA
LỖI