varnishd - Trực tuyến trên đám mây

Đây là lệnh varnishd có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


varnishd - daemon trình tăng tốc HTTP

SYNOPSIS


varnishd [-a address [: port] [, PROTO]] [-b host [: port]] [-C] [-d] [-F] [-f config] [-h
gõ [, options]] [-i danh tính] [-j jail [, jailoptions]] [-l vsl [, vsm]] [-M address: port] [-n
name] [-P file] [-p param = value] [-r param [, param ...]] [-S secret-file] [-s
[name =] kind [, options]] [-T địa chỉ [: port]] [-t TTL] [-V] [-W bồi bàn]

MÔ TẢ


véc ni daemon chấp nhận các yêu cầu HTTP từ máy khách, chuyển chúng đến máy chủ phụ trợ
và lưu vào bộ nhớ cache các tài liệu đã trả về để đáp ứng tốt hơn các yêu cầu trong tương lai đối với cùng một tài liệu.

LỰA CHỌN


-a
Lắng nghe các yêu cầu của khách hàng trên địa chỉ và cổng được chỉ định. Địa chỉ có thể là một
tên máy chủ ("localhost"), IPv4 dotted-quad ("127.0.0.1") hoặc địa chỉ IPv6
được đặt trong dấu ngoặc vuông ("[:: 1]"). Nếu địa chỉ không được chỉ định, véc ni sẽ
nghe trên tất cả các giao diện IPv4 và IPv6 có sẵn. Nếu cổng không được chỉ định, cổng 80
(http) được sử dụng. Một loại giao thức bổ sung có thể được đặt cho ổ cắm nghe
với PROTO. Các loại giao thức hợp lệ là: HTTP / 1 (mặc định) và PROXY. Nhiều
địa chỉ lắng nghe có thể được chỉ định bằng cách sử dụng nhiều đối số -a.

-b
Sử dụng máy chủ được chỉ định làm máy chủ phụ trợ. Nếu cổng không được chỉ định, mặc định là
8080.

-C In mã VCL được biên dịch sang ngôn ngữ C và thoát. Chỉ định tệp VCL để biên dịch
với tùy chọn -f.

-d Bật chế độ gỡ lỗi: Tiến trình mẹ chạy ở nền trước với CLI
kết nối trên stdin / stdout và tiến trình con phải được bắt đầu một cách rõ ràng bằng
Lệnh CLI. Việc chấm dứt quy trình dành cho cha mẹ cũng sẽ chấm dứt đứa trẻ.

-F Không rẽ nhánh, chạy trước chạy sau.

-f cấu hình
Sử dụng tệp cấu hình VCL được chỉ định thay vì tệp mặc định bên trong. Nhìn thấy
vcl(7) để biết chi tiết về cú pháp VCL.

Khi cả đối số a -f và a -b đều không được đưa ra, véc ni sẽ không bắt đầu công nhân
xử lý nhưng xử lý các lệnh cli.

-h
Chỉ định thuật toán băm. Nhìn thấy Băm Thuật toán Các lựa chọn cho một danh sách được hỗ trợ
các thuật toán.

-i bản sắc
Chỉ định danh tính của máy chủ Varnish. Điều này có thể được truy cập bằng cách sử dụng
máy chủ.identity từ VCL.

-j
Chỉ định công nghệ bẻ khóa để sử dụng.

-l
Chỉ định kích thước của tệp shmlog. vsl là không gian cho các bản ghi VSL [80M] và vsm
là không gian cho bộ đếm số liệu thống kê [1 triệu]. Các hậu tố tỷ lệ như 'K' và 'M' có thể được sử dụng
lên đến (G) igabyte. Mặc định là 81 Megabyte.

-M
Kết nối với cổng này và cung cấp giao diện dòng lệnh. Hãy nghĩ về nó như một
ngược vỏ. Khi chạy với -M và không có phần phụ trợ được xác định, con
quá trình (bộ nhớ cache) sẽ không bắt đầu ban đầu.

-n tên
Chỉ định tên cho trường hợp này. Trong số những thứ khác, tên này được sử dụng để
xây dựng tên của thư mục trong đó véc ni giữ các tệp tạm thời và
trạng thái dai dẳng. Nếu tên được chỉ định bắt đầu bằng dấu gạch chéo lên, nó là
được hiểu là đường dẫn tuyệt đối đến thư mục sẽ được sử dụng cho việc này
mục đích.

-P hồ sơ
Ghi PID của quá trình vào tệp được chỉ định.

-p
Đặt tham số được chỉ định bởi param thành giá trị được chỉ định, xem Danh sách of Thông số Kỹ thuật
để biết chi tiết. Tùy chọn này có thể được sử dụng nhiều lần để chỉ định nhiều tham số.

-r
Làm cho các tham số được liệt kê chỉ đọc. Điều này cung cấp cho quản trị viên hệ thống một cách để
giới hạn những gì Varnish CLI có thể làm. Cân nhắc việc đưa ra các thông số như cc_command,
vcc_allow_inline_cvmod_dir chỉ đọc vì chúng có thể được sử dụng để
nâng cao đặc quyền từ CLI.

-S hồ sơ
Đường dẫn đến tệp chứa bí mật được sử dụng để cấp quyền truy cập vào phần quản lý
Hải cảng. Nếu không được cung cấp, một bí mật mới sẽ được rút ra từ hệ thống PRNG.

-s <[name =] type [, options]>
Sử dụng phần phụ trợ lưu trữ được chỉ định, xem Bảo quản Backend Các lựa chọn.

Tùy chọn này có thể được sử dụng nhiều lần để chỉ định nhiều tệp lưu trữ. Tên là
được tham chiếu trong nhật ký, VCL, thống kê, v.v.

-T
Cung cấp giao diện quản lý trên địa chỉ và cổng được chỉ định. Nhìn thấy Quản lý
Giao thức để biết danh sách các lệnh quản lý.

-t TTL Chỉ định thời gian tồn tại (TTL) mặc định cho các đối tượng được lưu trong bộ nhớ cache. Đây là một phím tắt cho
xác định mặc định_ttl tham số thời gian chạy.

-V Hiển thị số phiên bản và thoát.

-W phục vụ nam
Chỉ định loại người phục vụ để sử dụng.

Băm Thuật toán Các lựa chọn
Các thuật toán băm sau có sẵn:

-h chí mạng
cấu trúc cây tự nhân rộng. Thuật toán băm mặc định trong Varnish Cache 2.1 và
trở đi. So với một cây B truyền thống hơn, cây critbit gần như
hoàn toàn không khóa. Đừng thay đổi điều này trừ khi bạn chắc chắn mình đang làm gì.

-h đơn giản_list
Một danh sách liên kết kép đơn giản. Không được khuyến khích sử dụng trong sản xuất.

-h
Một bảng băm tiêu chuẩn. Khóa băm là CRC32 của mô-đun URL của đối tượng
kích thước của bảng băm. Mỗi mục nhập bảng trỏ đến một danh sách các phần tử có chung
cùng một khóa băm. Tham số nhóm chỉ định số lượng mục nhập trong
bảng băm. Giá trị mặc định là 16383.

Bảo quản Backend Các lựa chọn
Có các loại bộ nhớ sau:

-s
malloc là một chương trình phụ trợ dựa trên bộ nhớ.

-s
Phần phụ trợ tệp lưu trữ dữ liệu trong một tệp trên đĩa. Tệp sẽ được truy cập bằng
mmap.

Đường dẫn là bắt buộc. Nếu đường dẫn trỏ đến một thư mục, một tệp tạm thời sẽ là
được tạo trong thư mục đó và ngay lập tức được hủy liên kết. Nếu đường dẫn trỏ đến một
tệp không tồn tại, tệp sẽ được tạo.

Nếu kích thước bị bỏ qua và đường dẫn trỏ đến tệp hiện có có kích thước lớn hơn
không, kích thước của tệp đó sẽ được sử dụng. Nếu không, một lỗi được báo cáo.

Mức độ chi tiết đặt kích thước khối phân bổ. Mặc định cho kích thước trang hệ thống hoặc
kích thước khối hệ thống tệp, tùy theo kích thước khối nào lớn hơn.

-s
Lưu trữ liên tục. Varnish sẽ lưu trữ các đối tượng trong một tệp theo cách sẽ
đảm bảo sự tồn tại của hầu hết của các đối tượng trong trường hợp có kế hoạch hoặc không có kế hoạch
tắt máy Varnish. Phần phụ trợ lưu trữ liên tục có nhiều vấn đề với nó và
có thể sẽ bị xóa khỏi phiên bản Varnish trong tương lai.

Các lựa chọn
Nhà tù Varnish là sự tổng hợp hóa qua các phương pháp cụ thể của nền tảng khác nhau để giảm
đặc quyền của các quy trình vecni. Họ có thể có các tùy chọn cụ thể. Các nhà tù hiện có là:

-j solaris
Giảm đặc quyền(5) cho véc ni và quy trình phụ đối với tập hợp yêu cầu tối thiểu.
Chỉ có sẵn trên các nền tảng có setppriv(2) cuộc gọi.

-j
Mặc định trên tất cả các nền tảng khác nếu véc ni được bắt đầu với một uid hiệu quả
của 0 ("với tư cách là người chủ") hoặc với tư cách là người dùng véc ni.

Với unix công nghệ tù được kích hoạt, véc ni sẽ chuyển sang người dùng thay thế
cho các quy trình con và thay đổi uid có hiệu lực của quy trình chính bất cứ khi nào
có thể.

Tùy chọn người sử dụng đối số chỉ định người dùng thay thế nào sẽ sử dụng. Nó mặc định là
véc ni

Tùy chọn ccgroup đối số chỉ định một nhóm để thêm vào các quy trình con varnish
yêu cầu quyền truy cập vào trình biên dịch c. Không có mặc định.

-j không ai
lựa chọn tù cuối cùng: Với công nghệ tù không ai, véc ni sẽ chạy tất cả các quy trình
với các đặc quyền mà nó đã được bắt đầu.

Quản lý Giao thức
Nếu tùy chọn -T được chỉ định, véc ni sẽ cung cấp giao diện quản lý dòng lệnh trên
địa chỉ và cổng được chỉ định. Cách được đề xuất để kết nối với dòng lệnh
giao diện quản lý được thông qua vecni(1).

Các lệnh có sẵn được ghi lại trong véc ni(7).

CHẠY THỜI GIAN THÔNG SỐ


chạy Thời gian Tham số Flags
Các tham số thời gian chạy được đánh dấu bằng cờ tốc ký để tránh lặp lại cùng một văn bản
và hơn trong bảng dưới đây. Ý nghĩa của các lá cờ là:

· thử nghiệm

Chúng tôi không có thông tin chắc chắn về các giá trị tốt / xấu / tối ưu cho tham số này. Nhận xét
với kinh nghiệm và quan sát được hoan nghênh nhất.

· bị trì hoãn

Tham số này có thể được thay đổi nhanh chóng, nhưng sẽ không có hiệu lực ngay lập tức.

· khởi động lại

Quá trình worker phải được dừng và khởi động lại trước khi tham số này có hiệu lực.

· tải lại

Các chương trình VCL phải được tải lại để tham số này có hiệu lực.

· thử nghiệm

Chúng tôi không thực sự chắc chắn về thông số này, hãy cho chúng tôi biết những gì bạn tìm thấy.

· magicien

Đừng chạm vào trừ khi bạn có thật không biết bạn đang làm gì.

· chỉ_root

Chỉ hoạt động nếu véc ni đang chạy dưới dạng root.

Mặc định Giá trị Trường hợp ngoại lệ on 32 bit Hệ thống
Lưu ý rằng trên các hệ thống 32 bit, một số giá trị mặc định nhất định bị giảm so với các giá trị
được liệt kê bên dưới, để tiết kiệm không gian máy ảo:

· Workspace_client: 16k

· Thread_pool_workspace: 16k

· Http_resp_size: 8k

· Http_req_size: 12k

· Gzip_stack_buffer: 4k

· Thread_pool_stack: 64k

Danh sách of Thông số Kỹ thuật
Văn bản này được tạo ra từ cùng một văn bản mà bạn sẽ tìm thấy trong CLI nếu bạn sử dụng
lệnh param.show:

chấp nhận_filter
· Đơn vị: bool

· Mặc định: tắt

· Cờ: must_restart

Bật bộ lọc chấp nhận hạt nhân (nếu có trong hạt nhân).

chấp nhận_sleep_decay
· Mặc định: 0.9

· Tối thiểu: 0

· Tối đa: 1

· Cờ: thử nghiệm

Nếu chúng tôi sử dụng hết tài nguyên, chẳng hạn như bộ mô tả tệp hoặc chuỗi công nhân, bộ chấp nhận sẽ
ngủ giữa chấp nhận. Tham số này (nhân lên) làm giảm thời lượng ngủ cho
từng chấp nhận thành công. (tức là: 0.9 = giảm 10%)

chấp nhận_ngủ_incr
· Đơn vị: giây

· Mặc định: 0.000

· Tối thiểu: 0.000

· Tối đa: 1.000

· Cờ: thử nghiệm

Nếu chúng tôi sử dụng hết tài nguyên, chẳng hạn như bộ mô tả tệp hoặc chuỗi công nhân, bộ chấp nhận sẽ
ngủ giữa chấp nhận. Tham số này kiểm soát thời gian chúng ta ngủ bao lâu, mỗi khi chúng ta thất bại
để chấp nhận một kết nối mới.

chấp nhận_ngủ_max
· Đơn vị: giây

· Mặc định: 0.050

· Tối thiểu: 0.000

· Tối đa: 10.000

· Cờ: thử nghiệm

Nếu chúng tôi sử dụng hết tài nguyên, chẳng hạn như bộ mô tả tệp hoặc chuỗi công nhân, bộ chấp nhận sẽ
ngủ giữa chấp nhận. Tham số này giới hạn thời gian nó có thể ngủ giữa các lần thử
Chấp nhận kết nối mới.

Khởi động lại tự động
· Đơn vị: bool

· Mặc định: bật

Tự động khởi động lại quy trình con / công nhân nếu nó chết.

backend_idle_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 1.000

Hết thời gian chờ trước khi chúng tôi đóng các kết nối phụ trợ không sử dụng.

ban_dups
· Đơn vị: bool

· Mặc định: bật

Loại bỏ các lệnh cấm giống hệt cũ hơn khi một lệnh cấm mới được thêm vào. Điều này giúp tiết kiệm chu kỳ CPU bằng cách không
so sánh các đối tượng với các lệnh cấm giống hệt nhau. Điều này thật lãng phí thời gian nếu bạn có nhiều lệnh cấm mà
không bao giờ giống hệt nhau.

ban_lurker_age
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

Kẻ ẩn nấp sẽ bỏ qua các lệnh cấm cho đến khi chúng quá cũ. Khi một lệnh cấm được thêm vào, hoạt động
lưu lượng truy cập sẽ được kiểm tra dựa trên nó như một phần của tra cứu đối tượng. Tham số này giữ
cấm ẩn nấp, cho đến khi vội vàng kết thúc.

cấm_lurker_batch
· Mặc định: 1000

· Tối thiểu: 1

Kẻ ẩn nấp ban mai ngủ $ {ban_lurker_sleep} sau khi kiểm tra nhiều đối tượng này. Sử dụng cái này để
điều chỉnh tốc độ của kẻ ẩn nấp nếu nó ăn quá nhiều tài nguyên.

cấm_lurker_sleep
· Đơn vị: giây

· Mặc định: 0.010

· Tối thiểu: 0.000

Lệnh cấm ngủ trong bao lâu sau khi kiểm tra các đối tượng $ {ban_lurker_batch}. Sử dụng cái này để
điều chỉnh tốc độ của kẻ ẩn nấp nếu nó ăn quá nhiều tài nguyên. Giá trị bằng XNUMX sẽ vô hiệu hóa lệnh cấm
ẩn nấp hoàn toàn.

giữa_bytes_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

Chúng tôi chỉ đợi điều này trong nhiều giây giữa các byte nhận được từ chương trình phụ trợ trước khi đưa ra
lên tìm nạp. Giá trị bằng XNUMX có nghĩa là không bao giờ bỏ cuộc. Giá trị VCL, trên mỗi chương trình phụ trợ hoặc mỗi
yêu cầu phụ trợ được ưu tiên. Tham số này không áp dụng cho các yêu cầu có đường ống dẫn.

cc_command
· Mặc định: "execute gcc -std = gnu99 -g -O2 -fstack-protectionor-strong -Wformat
-Werror = format-security -Wall -Werror -Wno-error = used-result -pthread -fpic -shared
-Wl, -x -o% o% s "

· Cờ: must_reload

Lệnh được sử dụng để biên dịch mã nguồn C thành dlopen(3) đối tượng có thể tải được. Không tí nào
sự xuất hiện của% s trong chuỗi sẽ được thay thế bằng tên tệp nguồn và% o sẽ là
được thay thế bằng tên tệp đầu ra.

cli_buffer
· Đơn vị: byte

· Mặc định: 8k

· Tối thiểu: 4k

Kích thước của bộ đệm cho đầu vào lệnh CLI. Bạn có thể cần phải tăng điều này nếu bạn có VCL lớn
và sử dụng lệnh vcl.inline CLI. NB: Phải được chỉ định bằng -p để có hiệu lực.

cli_limit
· Đơn vị: byte

· Mặc định: 48k

· Tối thiểu: 128b

· Tối đa: 99999999b

Kích thước tối đa của phản hồi CLI. Nếu phản hồi vượt quá giới hạn này, mã phản hồi sẽ
là 201 thay vì 200 và dòng cuối cùng sẽ cho biết phần bị cắt bớt.

cli_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

Hết thời gian chờ để trẻ trả lời các yêu cầu CLI từ mgt_param.

đồng hồ_skew
· Đơn vị: giây

· Mặc định: 10

· Tối thiểu: 0

Chúng tôi sẵn sàng chấp nhận bao nhiêu đồng hồ giữa chương trình phụ trợ và đồng hồ của chính chúng tôi.

kết nối_timeout
· Đơn vị: giây

· Mặc định: 3.500

· Tối thiểu: 0.000

Thời gian chờ kết nối mặc định cho các kết nối phụ trợ. Chúng tôi chỉ cố gắng kết nối với phần phụ trợ
trong nhiều giây trước khi bỏ cuộc. VCL có thể ghi đè giá trị mặc định này cho mỗi
phụ trợ và yêu cầu phụ trợ.

critbit_cooloff
· Đơn vị: giây

· Mặc định: 180.000

· Tối thiểu: 60.000

· Tối đa: 254.000

· Cờ: wizard

Trình băm critbit giữ các đối tượng bị xóa trong danh sách tạm dừng trong bao lâu.

gỡ lỗi
· Mặc định: không có

Bật / Tắt các loại gỡ lỗi khác nhau.

không ai Tắt tất cả gỡ lỗi

Sử dụng tiền tố +/- để đặt / đặt lại các bit riêng lẻ:

req_state
Công cụ trạng thái yêu cầu VSL

không gian làm việc
VSL Workspace hoạt động

phục vụ nam Bộ phận bồi bàn VSL

danh sách chờ
Sự kiện trong danh sách chờ VSL

đồng bộ hóa
Làm cho VSL đồng bộ

băm nhỏ
Các trường hợp cạnh trong Hash

vclrel Phát hành VCL nhanh chóng

kẻ giấu mặt VSL Ban ẩn nấp

esi_chop
Chop ESI tìm nạp thành từng bit

tuôn ra_head
Xả sau đầu http1

vtc_mode
Chế độ Varnishtest

nhân chứng
Gửi bản ghi khóa WITNESS

vsm_keep
Giữ tệp VSM khi khởi động lại

mặc định_grace
· Đơn vị: giây

· Mặc định: 10.000

· Tối thiểu: 0.000

· Cờ: obj_sticky

Thời gian gia hạn mặc định. Chúng tôi sẽ cung cấp một đối tượng này rất lâu sau khi nó đã hết hạn, miễn là
một chủ đề khác đang cố gắng lấy một bản sao mới.

mặc định_keep
· Đơn vị: giây

· Mặc định: 0.000

· Tối thiểu: 0.000

· Cờ: obj_sticky

Khoảng thời gian lưu giữ mặc định. Chúng tôi sẽ giữ một vật vô dụng trong khoảng thời gian này, làm cho nó có sẵn
cho các lần tìm nạp phụ trợ có điều kiện. Điều đó có nghĩa là đối tượng sẽ bị xóa khỏi
cache ở cuối ttl + Grace + keep.

mặc định_ttl
· Đơn vị: giây

· Mặc định: 120.000

· Tối thiểu: 0.000

· Cờ: obj_sticky

TTL được gán cho các đối tượng nếu không phải chương trình phụ trợ hoặc mã VCL chỉ định một đối tượng.

tính năng
· Mặc định: không có

Bật / Tắt các tính năng nhỏ khác nhau.

không ai Tắt tất cả các tính năng.

Sử dụng tiền tố +/- để bật / tắt tính năng riêng lẻ:

short_panic
Tin nhắn hoảng sợ ngắn.

đợi_silo
Chờ silo dai dẳng.

no_coredump
Không coredumps.

esi_ignore_https
Coi HTTPS là HTTP trong ESI: bao gồm

esi_disable_xml_check
Không kiểm tra nội dung giống như XML

esi_ignore_other_elements
Bỏ qua các phần tử XML không phải esi

esi_remove_bom
Xóa UTF-8 BOM

tìm nạp_chunksize
· Đơn vị: byte

· Mặc định: 16k

· Tối thiểu: 4k

· Cờ: thử nghiệm

Kích thước khối mặc định được sử dụng bởi trình tìm nạp. Cái này phải lớn hơn phần lớn các đối tượng
với các TTL ngắn. Giới hạn nội bộ trong mô-đun storage_file làm tăng trên 128kb a
ý tưởng không rõ ràng.

tìm nạp_maxchunksize
· Đơn vị: byte

· Mặc định: 0.25G

· Tối thiểu: 64k

· Cờ: thử nghiệm

Kích thước khối tối đa mà chúng tôi cố gắng phân bổ từ bộ nhớ. Làm cho điều này quá lớn có thể gây ra
sự chậm trễ và phân mảnh lưu trữ.

first_byte_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

Thời gian chờ mặc định để nhận byte đầu tiên từ chương trình phụ trợ. Chúng tôi chỉ chờ đợi điều này trong nhiều giây
cho byte đầu tiên trước khi từ bỏ. Giá trị 0 có nghĩa là nó sẽ không bao giờ hết thời gian. VCL có thể
ghi đè giá trị mặc định này cho từng phụ trợ và yêu cầu phụ trợ. Tham số này không
áp dụng cho đường ống.

gzip_buffer
· Đơn vị: byte

· Mặc định: 32k

· Tối thiểu: 2k

· Cờ: thử nghiệm

Kích thước của bộ đệm malloc được sử dụng để xử lý gzip. Những bộ đệm này được sử dụng để vận chuyển
dữ liệu, chẳng hạn như dữ liệu gunzip'ed được gửi đến một máy khách.
dẫn đến nhiều chi phí hơn, ghi vào ổ cắm, v.v., làm cho nó quá lớn có thể chỉ là
lãng phí bộ nhớ.

gzip_level
· Mặc định: 6

· Tối thiểu: 0

· Tối đa: 9

Mức nén Gzip: 0 = gỡ lỗi, 1 = nhanh, 9 = tốt nhất

gzip_memlevel
· Mặc định: 8

· Tối thiểu: 1

· Tối đa: 9

Mức bộ nhớ Gzip 1 = chậm / ít nhất, 9 = nhanh / nén nhiều nhất. Tác động bộ nhớ là 1 = 1k, 2 = 2k, ...
9 = 256k.

http_gzip_support
· Đơn vị: bool

· Mặc định: bật

Kích hoạt tính năng gzip hỗ trợ. Thời Gian kích hoạt Đánh vẹt ni yêu cầu nén đối tượng từ các phụ trợ
hàng họ nén. If a khách hàng làm không hỗ trợ gzip mã hóa Đánh vẹt ni sẽ giải nén
nén đối tượng on nhu cầu. Đánh vẹt ni sẽ Ngoài ra viết lại các Chấp nhận mã hóa cú đội đầu of
khách hàng chỉ ra hỗ trợ cho gzip đến:
Chấp nhận mã hóa: gzip

Ứng dụng khách không hỗ trợ gzip sẽ bị xóa tiêu đề Mã hóa chấp nhận của họ. Để biết thêm
thông tin về cách gzip được triển khai, vui lòng xem chương về gzip trong Varnish
tài liệu tham khảo.

http_max_hdr
· Đơn vị: dòng tiêu đề

· Mặc định: 64

· Tối thiểu: 32

· Tối đa: 65535

Số dòng tiêu đề HTTP tối đa mà chúng tôi cho phép trong {req | resp | bereq | beresp} .http (obj.http là
được tự động hóa với số lượng tiêu đề chính xác). Rẻ, ~ 20 byte, về không gian làm việc
kỉ niệm. Lưu ý rằng dòng đầu tiên chiếm năm dòng tiêu đề.

http_range_support
· Đơn vị: bool

· Mặc định: bật

Bật hỗ trợ cho tiêu đề Phạm vi HTTP.

http_req_hdr_len
· Đơn vị: byte

· Mặc định: 8k

· Tối thiểu: 40b

Độ dài tối đa của bất kỳ tiêu đề yêu cầu ứng dụng khách HTTP nào mà chúng tôi sẽ cho phép. Giới hạn bao gồm
các dòng tiếp nối của nó.

http_req_size
· Đơn vị: byte

· Mặc định: 32k

· Tối thiểu: 0.25k

Số byte tối đa của yêu cầu ứng dụng khách HTTP mà chúng tôi sẽ xử lý. Đây là một giới hạn đối với tất cả
byte lên đến dòng trống kép kết thúc yêu cầu HTTP. Bộ nhớ cho yêu cầu
được cấp phát từ không gian làm việc của khách hàng (param: workspace_client) và giới hạn tham số này
yêu cầu được phép chiếm bao nhiêu phần trăm trong số đó.

http_resp_hdr_len
· Đơn vị: byte

· Mặc định: 8k

· Tối thiểu: 40b

Độ dài tối đa của bất kỳ tiêu đề phản hồi phụ trợ HTTP nào mà chúng tôi sẽ cho phép. Giới hạn bao gồm
các dòng tiếp nối của nó.

http_resp_size
· Đơn vị: byte

· Mặc định: 32k

· Tối thiểu: 0.25k

Số byte phản hồi phụ trợ HTTP tối đa mà chúng tôi sẽ xử lý. Đây là một giới hạn đối với
tất cả các byte cho đến dòng trống kép kết thúc yêu cầu HTTP. Bộ nhớ cho
yêu cầu được phân bổ từ không gian làm việc phụ trợ (param: workspace_backend) và điều này
tham số giới hạn lượng yêu cầu được phép sử dụng.

id_send_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

· Cờ: bị trì hoãn

Thời gian chờ đợi mà không có dữ liệu nào được gửi. Nếu không có dữ liệu nào được truyền trong nhiều giây này,
phiên đã đóng. Nhìn thấy bộ túi xách(2) theo SO_SNDTIMEO để biết thêm thông tin.

nghe_depth
· Đơn vị: kết nối

· Mặc định: 1024

· Tối thiểu: 0

· Cờ: must_restart

Lắng nghe độ sâu hàng đợi.

lru_interval
· Đơn vị: giây

· Mặc định: 2.000

· Tối thiểu: 0.000

· Cờ: thử nghiệm

Thời gian gia hạn trước khi đối tượng di chuyển trên danh sách LRU. Các đối tượng chỉ được di chuyển đến phía trước của
Danh sách LRU nếu chúng chưa được chuyển đến đó trong khoảng thời gian chờ này. Cái này
giảm số lượng hoạt động khóa cần thiết để truy cập danh sách LRU.

max_esi_deep
· Đơn vị: cấp độ

· Mặc định: 5

· Tối thiểu: 0

Độ sâu tối đa của esi: bao gồm xử lý.

max_restarts
· Đơn vị: khởi động lại

· Mặc định: 4

· Tối thiểu: 0

Giới hạn trên về số lần yêu cầu có thể khởi động lại. Lưu ý rằng việc khởi động lại có thể
gây ra tác động đối với phần phụ trợ, vì vậy đừng tăng một cách thiếu suy nghĩ.

max_retries
· Đơn vị: thử lại

· Mặc định: 4

· Tối thiểu: 0

Giới hạn trên về số lần tìm nạp phụ trợ có thể thử lại.

nuke_limit
· Đơn vị: phân bổ

· Mặc định: 50

· Tối thiểu: 0

· Cờ: thử nghiệm

Số đối tượng tối đa mà chúng tôi cố gắng xóa để tạo khoảng trống cho thân đối tượng.

pcre_match_limit
· Mặc định: 10000

· Tối thiểu: 1

Giới hạn cho số lần gọi hàm match () nội bộ trong pcre_exec ().

(Xem: PCRE_EXTRA_MATCH_LIMIT trong tài liệu pcre.)

Tham số này giới hạn lượng thời gian CPU so khớp biểu thức chính quy có thể tăng lên.

pcre_match_limit_recursion
· Mặc định: 20

· Tối thiểu: 1

Giới hạn độ sâu đệ quy cho hàm match () bên trong trong pcre_exec ().

(Xem: PCRE_EXTRA_MATCH_LIMIT_RECURSION trong tài liệu pcre.)

Điều này đặt ra giới hạn trên về số lượng ngăn xếp được PCRE sử dụng cho một số loại
biểu thức chính quy.

Chúng tôi đã đặt giá trị mặc định thấp để tránh sự cố, với chi phí có thể
lỗi đối sánh regexp.

Các lỗi đối sánh sẽ hiển thị trong nhật ký dưới dạng thông báo VCL_Error với lỗi regexp -27 hoặc
-21.

Testcase r01576 có thể hữu ích khi điều chỉnh tham số này.

ping_interval
· Đơn vị: giây

· Mặc định: 3

· Tối thiểu: 0

· Cờ: must_restart

Khoảng thời gian giữa các ping từ cha mẹ sang con. Zero sẽ vô hiệu hóa hoàn toàn ping, điều này
làm cho nó có thể đính kèm một trình gỡ lỗi cho trẻ em.

pipe_timeout
· Đơn vị: giây

· Mặc định: 60.000

· Tối thiểu: 0.000

Thời gian chờ không hoạt động cho các phiên PIPE. Nếu không có gì được nhận theo cả hai hướng cho việc này
nhiều giây, phiên được đóng lại.

pool_req
· Mặc định: 10,100,10

Các tham số cho nhóm bộ nhớ yêu cầu nhóm công nhân. Ba số là:

min_pool
kích thước tối thiểu của hồ bơi miễn phí.

max_pool
kích thước tối đa của hồ bơi miễn phí.

tuổi_tối đa
tuổi tối đa của phần tử miễn phí.

pool_sess
· Mặc định: 10,100,10

Các tham số cho nhóm bộ nhớ phiên nhóm công nhân. Ba số là:

min_pool
kích thước tối thiểu của hồ bơi miễn phí.

max_pool
kích thước tối đa của hồ bơi miễn phí.

tuổi_tối đa
tuổi tối đa của phần tử miễn phí.

pool_vbo
· Mặc định: 10,100,10

Các tham số cho nhóm bộ nhớ tìm nạp đối tượng phụ trợ. Ba số là:

min_pool
kích thước tối thiểu của hồ bơi miễn phí.

max_pool
kích thước tối đa của hồ bơi miễn phí.

tuổi_tối đa
tuổi tối đa của phần tử miễn phí.

thích_ipv6
· Đơn vị: bool

· Mặc định: tắt

Ưu tiên địa chỉ IPv6 khi kết nối với các chương trình phụ trợ có cả địa chỉ IPv4 và IPv6.

Rush_exponent
· Đơn vị: yêu cầu theo yêu cầu

· Mặc định: 3

· Tối thiểu: 2

· Cờ: thử nghiệm

Chúng tôi bắt đầu có bao nhiêu yêu cầu trỏ hướng cho mỗi yêu cầu đã hoàn thành trên đối tượng. NB: Ngay cả với
sự chậm trễ liên quan của việc phân phối, thông số này kiểm soát sự gia tăng theo cấp số nhân
của chủ đề công nhân.

gửi_thời gian chờ
· Đơn vị: giây

· Mặc định: 600.000

· Tối thiểu: 0.000

· Cờ: bị trì hoãn

Gửi thời gian chờ cho các kết nối máy khách. Nếu phản hồi HTTP không được truyền trong này
nhiều giây, phiên đóng cửa. Nhìn thấy bộ túi xách(2) theo SO_SNDTIMEO để biết thêm
thông tin.

phiên_max
· Đơn vị: phiên

· Mặc định: 100000

· Tối thiểu: 1000

Số lượng phiên tối đa mà chúng tôi sẽ phân bổ từ một nhóm trước khi chỉ giảm
kết nối. Đây hầu hết là một biện pháp chống DoS và không nên đặt nó quá cao
đau, miễn là bạn có ký ức cho nó.

shm_reclen
· Đơn vị: byte

· Mặc định: 255b

· Tối thiểu: 16b

· Tối đa: 4084

Tên cũ của vsl_reclen, hãy sử dụng tên đó thay thế.

thiếu thốn
· Đơn vị: giây

· Mặc định: 10.000

· Tối thiểu: 0.000

Các đối tượng được tạo bằng (ttl + Grace + keep) ngắn hơn giá trị này luôn được đưa vào trạng thái tạm thời
lưu trữ.

sigsegv_handler
· Đơn vị: bool

· Mặc định: bật

· Cờ: must_restart

Cài đặt trình xử lý tín hiệu cố gắng kết xuất thông tin gỡ lỗi về lỗi phân đoạn, bus
lỗi và hủy bỏ tín hiệu.

syslog_cli_traffic
· Đơn vị: bool

· Mặc định: bật

Ghi tất cả lưu lượng CLI vào nhật ký hệ thống (LOG_INFO).

tcp_keepalive_intvl
· Đơn vị: giây

· Mặc định: 75.000

· Tối thiểu: 1.000

· Tối đa: 100.000

· Cờ: thử nghiệm

Số giây giữa các đầu dò giữ nguyên TCP.

tcp_keepalive_probes
· Đơn vị: đầu dò

· Mặc định: 9

· Tối thiểu: 1

· Tối đa: 100

· Cờ: thử nghiệm

Số lượng tối đa các đầu dò TCP còn tồn tại để gửi trước khi từ bỏ và giết chết
kết nối nếu không nhận được phản hồi từ đầu bên kia.

tcp_keepalive_time
· Đơn vị: giây

· Mặc định: 7200.000

· Tối thiểu: 1.000

· Tối đa: 7200.000

· Cờ: thử nghiệm

Số giây kết nối cần ở chế độ chờ trước khi TCP bắt đầu gửi đi
các đầu dò sống sót.

thread_pool_add_delay
· Đơn vị: giây

· Mặc định: 0.000

· Tối thiểu: 0.000

· Cờ: thử nghiệm

Chờ ít nhất là khoảng thời gian này sau khi tạo một chủ đề.

Một số hệ thống (lỗi) có thể cần một khoảng thời gian trễ ngắn (dưới giây) giữa việc tạo luồng. Bộ
này thành vài mili giây nếu bạn thấy bộ đếm 'thread_failed' phát triển quá nhiều.

Đặt điều này quá cao dẫn đến không đủ luồng công nhân.

thread_pool_destroy_delay
· Đơn vị: giây

· Mặc định: 1.000

· Tối thiểu: 0.010

· Cờ: bị trì hoãn, đang thử nghiệm

Chờ điều này rất lâu sau khi phá hủy một chủ đề.

Điều này kiểm soát sự phân rã của các nhóm luồng khi không hoạt động (-ish).

thread_pool_fail_delay
· Đơn vị: giây

· Mặc định: 0.200

· Tối thiểu: 0.010

· Cờ: thử nghiệm

Chờ ít nhất khoảng thời gian này sau khi tạo chuỗi không thành công trước khi cố gắng tạo một chuỗi khác
chủ đề.

Việc không tạo một chuỗi công nhân thường là một dấu hiệu cho thấy phần cuối sắp kết thúc, bởi vì
quá trình sắp hết tài nguyên. Sự chậm trễ này cố gắng không vội vàng kết thúc
không cần thiết.

Nếu lỗi tạo luồng là một vấn đề, hãy kiểm tra xem thread_pool_max không quá cao.

Nó cũng có thể giúp tăng thread_pool_timeout và thread_pool_min, để giảm tỷ lệ
tại đó các bậc thang bị phá hủy và sau đó được tạo lại.

thread_pool_max
· Đơn vị: chủ đề

· Mặc định: 5000

· Tối thiểu: 100

· Cờ: bị trì hoãn

Số luồng công nhân tối đa trong mỗi nhóm.

Không đặt giá trị này cao hơn mức bạn phải đặt, vì luồng công nhân dư thừa sẽ hút hết RAM và CPU
và nói chung chỉ là cản trở hoàn thành công việc.

thread_pool_min
· Đơn vị: chủ đề

· Mặc định: 100

· Tối đa: 5000

· Cờ: bị trì hoãn

Số luồng công nhân tối thiểu trong mỗi nhóm.

Tăng điều này có thể giúp tăng tốc nhanh hơn từ các tình huống tải thấp hoặc khi các luồng có
hết hạn.

Tối thiểu là 10 chủ đề.

thread_pool_stack
· Đơn vị: byte

· Mặc định: 48k

· Tối thiểu: 16k

· Cờ: thử nghiệm

Kích thước ngăn xếp ren công nhân. Điều này có thể sẽ được làm tròn đến bội số của 4k (hoặc bất cứ điều gì
kích thước trang có thể là) bởi hạt nhân.

thread_pool_timeout
· Đơn vị: giây

· Mặc định: 300.000

· Tối thiểu: 10.000

· Cờ: bị trì hoãn, đang thử nghiệm

Ngưỡng nhàn rỗi của luồng.

Các chuỗi vượt quá thread_pool_min, đã không hoạt động trong ít nhất một thời gian dài, sẽ
bị phá hủy.

thread_pools
· Đơn vị: hồ bơi

· Mặc định: 2

· Tối thiểu: 1

· Cờ: bị trì hoãn, đang thử nghiệm

Số lượng nhóm chủ đề.

Số lượng nhóm công nhân ngày càng tăng làm giảm sự tranh chấp về khóa.

Quá nhiều nhóm làm lãng phí tài nguyên CPU và RAM và nhiều hơn một nhóm cho mỗi CPU là
có thể ảnh hưởng đến hiệu suất.

Có thể tăng khi đang di chuyển, nhưng giảm yêu cầu khởi động lại để có hiệu lực.

thread_queue_limit
· Mặc định: 20

· Tối thiểu: 0

· Cờ: thử nghiệm

Độ dài hàng đợi được phép cho mỗi nhóm luồng.

Điều này đặt số lượng yêu cầu mà chúng tôi sẽ xếp hàng, chờ đợi một chuỗi có sẵn. Bên trên
các phiên giới hạn này sẽ bị loại bỏ thay vì xếp hàng đợi.

thread_stats_rate
· Đơn vị: yêu cầu

· Mặc định: 10

· Tối thiểu: 0

· Cờ: thử nghiệm

Các luồng công nhân tích lũy số liệu thống kê và kết xuất chúng vào bộ đếm số liệu thống kê toàn cầu nếu
khóa miễn phí khi họ hoàn thành công việc (yêu cầu / tìm nạp, v.v.) Tham số này xác định
số lượng công việc tối đa mà một chuỗi worker có thể xử lý, trước khi nó bị buộc phải hủy bỏ
số liệu thống kê tích lũy vào bộ đếm toàn cầu.

hết thời gian chờ_không hoạt động
· Đơn vị: giây

· Mặc định: 5.000

· Tối thiểu: 0.000

Thời gian chờ không hoạt động cho các kết nối máy khách. Một kết nối được coi là không hoạt động, cho đến khi chúng tôi có
đã nhận được tiêu đề yêu cầu đầy đủ.

hết thời gian_linger
· Đơn vị: giây

· Mặc định: 0.050

· Tối thiểu: 0.000

· Cờ: thử nghiệm

Chuỗi công nhân tồn tại trong một phiên không hoạt động trong bao lâu trước khi chuyển nó cho
phục vụ nam. Khi các phiên được sử dụng lại, có tới một nửa số lần sử dụng lại diễn ra trong lần đầu tiên
100 msec của yêu cầu trước đó hoàn thành. Đặt điều này quá cao dẫn đến kết quả là worker
chủ đề không làm bất cứ điều gì để lưu giữ của họ, đặt nó quá thấp chỉ có nghĩa là nhiều hơn
các phiên đi vòng quanh người phục vụ.

vcc_allow_inline_c
· Đơn vị: bool

· Mặc định: tắt

Cho phép mã C nội tuyến trong VCL.

vcc_err_unref
· Đơn vị: bool

· Mặc định: bật

Các đối tượng VCL không được tham chiếu dẫn đến lỗi.

vcc_unsafe_path
· Đơn vị: bool

· Mặc định: bật

Cho phép '/' trong vmod và bao gồm các đường dẫn. Cho phép 'nhập ... từ ...'.

vcl_cooldown
· Đơn vị: giây

· Mặc định: 600.000

· Tối thiểu: 0.000

VCL được giữ ấm trong bao lâu sau khi được thay thế dưới dạng VCL đang hoạt động (mức độ chi tiết
khoảng 30 giây).

vcl_dir
· Mặc định: / etc / varnish

Thư mục (hoặc danh sách thư mục được phân tách bằng dấu hai chấm) mà từ đó đặt tên tệp VCL tương đối
(vcl.load và bao gồm) sẽ được tìm thấy.

vmod_dir
· Mặc định: / usr / lib / x86_64-linux-gnu / varnish / vmods

Thư mục (hoặc danh sách thư mục được phân tách bằng dấu hai chấm) nơi tìm thấy các VMOD.

vsl_buffer
· Đơn vị: byte

· Mặc định: 4k

· Tối thiểu: 267

Các byte của không gian làm việc (req- / backend-) dành riêng để đệm các bản ghi VSL. Cài đặt cả cái này nữa
chi phí bộ nhớ cao, đặt nó quá thấp sẽ gây ra nhiều VSL hơn và có khả năng tăng
khóa tranh chấp trên VSL mutex.

Mức tối thiểu theo dõi thông số vsl_reclen + 12 byte.

vsl_mask
· Mặc định: -VCL_trace, -WorkThread, -Hash, -VfpAcct

Che dấu các thư VSL riêng lẻ khỏi bị ghi lại.

mặc định
Đặt giá trị mặc định

Sử dụng tiền tố +/- ở phía trước tên thẻ VSL, để che dấu / hiển thị các thông điệp VSL riêng lẻ.

vsl_reclen
· Đơn vị: byte

· Mặc định: 255b

· Tối thiểu: 16b

· Tối đa: 4084b

Số byte tối đa trong bản ghi nhật ký SHM.

Tối đa theo dõi thông số vsl_buffer - 12 byte.

vsl_space
· Đơn vị: byte

· Mặc định: 80 triệu

· Tối thiểu: 1 triệu

· Cờ: must_restart

Lượng không gian cần phân bổ cho bộ đệm VSL VSL trong phân đoạn bộ nhớ VSM. nếu bạn
đặt quá nhỏ, véc ni {ncsa | log}, v.v. sẽ không thể theo kịp. Làm cho nó quá
lớn chỉ tốn tài nguyên bộ nhớ.

vsm_space
· Đơn vị: byte

· Mặc định: 1 triệu

· Tối thiểu: 1 triệu

· Cờ: must_restart

Lượng không gian cần phân bổ cho các bộ đếm thống kê trong phân đoạn bộ nhớ VSM. Nếu bạn thực hiện
điều này quá nhỏ, một số quầy sẽ không thể nhìn thấy được. Làm cho nó quá lớn chỉ tốn bộ nhớ
tài nguyên.

không gian làm việc_backend
· Đơn vị: byte

· Mặc định: 64k

· Tối thiểu: 1k

· Cờ: bị trì hoãn

Các byte của không gian làm việc giao thức HTTP cho yêu cầu / đáp ứng HTTP phụ trợ. Nếu lớn hơn 4k, hãy sử dụng
bội số của 4k cho hiệu quả VM.

không gian làm việc_client
· Đơn vị: byte

· Mặc định: 64k

· Tối thiểu: 9k

· Cờ: bị trì hoãn

Các byte của không gian làm việc giao thức HTTP cho các máy khách HTTP req / resp. Nếu lớn hơn 4k, hãy sử dụng
bội số của 4k cho hiệu quả VM.

không gian làm việc_session
· Đơn vị: byte

· Mặc định: 0.50k

· Tối thiểu: 0.25k

· Cờ: bị trì hoãn

Kích thước phân bổ cho cấu trúc phiên và không gian làm việc. Không gian làm việc được sử dụng chủ yếu
cho các địa chỉ kết nối TCP. Nếu lớn hơn 4k, hãy sử dụng bội số của 4k cho hiệu quả của VM.

không gian làm việc_thread
· Đơn vị: byte

· Mặc định: 2k

· Tối thiểu: 0.25k

· Tối đa: 8k

· Cờ: bị trì hoãn

Số byte không gian làm việc phụ trợ cho mỗi luồng. Không gian làm việc này được sử dụng cho một số
cấu trúc dữ liệu trong quá trình hoạt động của một luồng công nhân. Một cách sử dụng là cho các vectơ io
để viết các yêu cầu và phản hồi tới các socket, việc có quá ít dung lượng sẽ dẫn đến nhiều
viếtv(2) các cuộc gọi hệ thống, có quá nhiều chỉ gây lãng phí không gian.

EXIT


Vecni và các công cụ đi kèm, trong hầu hết các trường hợp, sẽ thoát ra bằng một trong các mã sau

· 0 OK

· 1 Một số lỗi có thể phụ thuộc vào hệ thống và / hoặc tạm thời

· 2 Lỗi cấu hình / tham số nghiêm trọng - thử lại với cùng một cấu hình /
các thông số rất có thể là vô dụng

véc ni quy trình chính cũng có thể HOẶC mã thoát của nó

· với 0x20 khi véc ni quá trình con chết,

· với 0x40 khi véc ni tiến trình con đã được kết thúc bởi một tín hiệu và

· với 0x80 khi một lõi bị đổ.

Sử dụng varnishd trực tuyến bằng các dịch vụ onworks.net



Các chương trình trực tuyến Linux & Windows mới nhất