Đầu tiên, để làm rõ: Nginx là một máy chủ web, với tất cả các tính năng và độ phức tạp đòi hỏi. Nó cũng có khả năng lưu trữ, nhưng đó không phải là mục tiêu thiết kế chính của nó.
Varnish không phải là một máy chủ web. Nó không thể lấp đầy vai trò đó (dù sao không phải không có một VCL thực sự xấu xa). Vai trò của nó là lưu trữ nội dung được cung cấp bởi một máy chủ khác. Nếu cần, nó có thể thay đổi yêu cầu hoặc phản hồi.
Nếu nginx có thể xử lý lưu lượng của bạn, thì nó là đủ. Nếu nginx không thể theo kịp, thì một cách để tăng dung lượng là bằng cách đặt bộ đệm trước nó và có bộ đệm xử lý càng nhiều yêu cầu càng tốt.
Ví dụ, chúng tôi sử dụng Apache để chạy một số trang web PHP tương đối phức tạp từ một cụm máy chủ web. Khi chúng tôi bắt đầu gặp vấn đề về dung lượng, chúng tôi đã đặt một cặp máy chủ Varnish trước cụm Apache. Các máy chủ Varnish hiện xử lý 85% tất cả các yêu cầu đến mà không làm phiền đến phụ trợ Apache.