About:
Varnish is a proxy HTTP ngược đa năng lưu trữ các phản hồi từ máy chủ phụ trợ trong bộ nhớ để chúng tôi được phục vụ nhanh chóng khi được yêu cầu lại. Nó sử dụng HTTP tiêu đề để xác định xem có nên lưu các phản hồi vào bộ nhớ đệm bộ nhớ cho một công cụ yêu cầu có thể hay không. Theo mặc định, nó không lưu vào bộ nhớ cache các phản hồi bằng cookie vì chúng tôi được coi là các yêu cầu dành riêng cho khách hàng; tuy nhiên bạn có thể thay đổi cài đặt này trong tệp cấu hình.
Guide:
Cập nhật lại hệ thống:
sudo apt-get cập nhật
Install Apache:
sudo apt-get install apache2 -y
Sau khi quá trình cài đặt Apache hoàn tất, hãy cài đặt Varnish bằng lệnh này:
sudo apt-get install varnish -y
Tiếp theo, đảm bảo rằng cả hai gói đều được cài đặt chính xác. Đầu tiên, sử dụng lệnh này để kiểm tra trạng thái của Apache:
sudo systemctl status apache2
Tiếp theo, kiểm tra trạng thái của Varnish bằng lệnh:
sudo systemctl status varnish
Cấu hình Varnish để phục vụ trang web tĩnh của Apache:
Ở bước trước, bạn đã cài đặt Varnish và tiếp theo bạn sẽ cần phải định cấu hình nó. Theo mặc định, Varnish lắng nghe trên cổng 6081 và kết nối với máy chủ web cục bộ trên cổng 8080. Bạn sẽ thay đổi điều đó để cung cấp trang web tĩnh Apache từ máy chủ Apache.
Đầu tiên, bạn sẽ thay đổi cổng lắng nghe của Varnish thành 8080
Sử dụng mkdir lệnh để tạo thư mục mới:
sudo mkdir /etc/systemd/system/varnish.service.d
Mở tệp customexec.conf:
sudo nano /etc/systemd/system/varnish.service.d/customexec.conf
Thêm nội dung sau vào :
[Service] ExecStart= ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :8080 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m
Lưu và đóng tệp lại. Chạy lệnh sau để khơi động lại dịch vụ:
sudo systemctl daemon-reload
Sau đó khởi động lại Varnish:
sudo systemctl restart varnish
Sử dụng netstat lệnh để hiển thị các kết nối:
sudo netstat -ltnp | grep 8080
Bây giờ Varnish đang chạy và nghe cổng 8080, bạn cần chỉnh sửa tệp cấu hình mặc định có tại /etc/varnish/default.vcl:
sudo nano /etc/varnish/default.vcl
Ở đây các bạn có thể thấy chạy trên cổng 8080:
Chúng ta đổi nó về cổng 80:
Lưu và đóng tệp default.vcl, sau đó khởi động lại Varnish bằng lệnh này:
sudo systemctl restart varnish
Kiểm tra Varnish bằng wrk:
Trước tiên, bạn sẽ cần cài đặt wrk bằng cách xây dựng nó từ nguồn. Bắt đầu bằng cách cài đặt một số công cụ xây dựng cho C và git, những công cụ cần thiết để xây dựng wrk từ nguồn:
sudo apt-get install build-essential libssl-dev git unzip -y
Sau đó sao chép kho lưu trữ git cho wrk vào thư mục wrk:
git clone https://github.com/wg/wrk.git wrk
cd tới thư mục wrk:
cd wrk
Xây dựng tệp thực thi wrk bằng make lệnh:
make
Sao chép thư mục wrk vào /usr/local/bin để bạn có thể truy cập nó từ bất kỳ đâu trong cấu trúc thư mục của bạn:
sudo cp wrk / usr / local / bin
Bây giờ bạn đã cài đặt wrk, hãy sử dụng nó để kiểm tra khả năng đáp ứng của Apache bằng lệnh này:
wrk -t2 -c1000 -d30 giây - tần suất http: // server_ip /
Trong thử nghiệm này, trung bình trễ là 153.54ms, có yêu cầu tổng số 1229964, 6374 đọc lỗi và 69 thời gian chờ lỗi. Các chính xác định số sẽ khác nhau trong cài đặt của bạn.
Bây giờ hãy chạy lại thử nghiệm tương tự đối với Varnish máy chủ bằng this command:
wrk -t2 -c1000 -d30 giây - tần suất http: // server_ip: 8080 /
Bạn có thể thấy đầu tiên sẽ hơi khác một chút, nhưng độ trễ sẽ thấp hơn đối với Varnish so với Apache. Trong trường hợp này, trung bình trễ là 7,56 ms giây, có yêu cầu tổng số 971291 và không có lỗi.
Phần kết:
This guide in the way, you have to configured Varnish to the server backup archive proxy back to an web page. Bạn đã thấy cách sử dụng cơ bản HTTP cache để cải thiện hiệu suất và bạn đã sử dụng wrk để chạy kiểm tra tải cho Apache và Varnish máy chủ để so sánh kết quả.
Nguồn:digitalocean