Điểm:0

Varnish 4.1 - Cách cung cấp bản sao được lưu trong bộ nhớ cache khi tìm nạp phụ trợ không thành công thay vì 503

lá cờ sn

Tôi có một trang web được cung cấp bởi apache+tomcat và một bộ đệm được cung cấp bởi Varnish 4.1

Khi apache ngừng hoạt động, véc ni luôn trả về lỗi 503.
Tôi muốn véc ni trả lại bản sao của các trang mà nó có trong bộ nhớ cache nhưng nỗ lực của tôi với ttl và ân sủng đã không thành công.
Tôi nghĩ rằng tôi đã đọc tất cả các tài liệu về véc ni 4.1 mà tôi có thể tìm thấy, mọi trợ giúp đều thực sự được đánh giá cao.

Cảm ơn trước

CHỈNH SỬA: varnishlog -g request -q "ReqUrl eq '/'"

Xoăn

* << Yêu cầu >> 1410492
- Bắt đầu yêu cầu 1410491 rxreq
- Dấu thời gian Bắt đầu: 1646995409.603391 0.000000 0.000000
- Dấu thời gian Yêu cầu: 1646995409.603391 0.000000 0.000000
- Yêu cầu Bắt đầu 10.xxx.xxx.xxx 57472
- ReqMethod NHẬN
- Yêu cầu URL /
- Giao thức yêu cầu HTTP/1.1
- Máy chủ ReqHeader: akamai5.rsi.ch
- Tác nhân người dùng ReqHeader: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0
- ReqHeader chấp nhận: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
- Ngôn ngữ chấp nhận ReqHeader: it,en-US;q=0.7,en;q=0.3
- Mã hóa chấp nhận ReqHeader: gzip, deflate, br
- Cookie ReqHeader: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; __utma=46365988.836346559.1644414441.16
- Yêu cầu nâng cấp-không an toàn-ReqHeader: 1
- ReqHeader sec-fetch-dest: tài liệu
- ReqHeader sec-fetch-mode: điều hướng
- ReqHeader sec-fetch-site: không có
- ReqHeader sec-fetch-user: ?1
- Kiểm soát bộ đệm ReqHeader: max-age=0
- ReqHeader x-chuyển tiếp-proto: https
- ReqHeader x-forwarded-ssl: bật
- Cổng chuyển tiếp x ReqHeader: 443
- ReqHeader x-forwarded-for: 1178.xxx.xxx.xxx
- Kết nối ReqHeader: đóng
- ReqUnset x-forwarded-for: 1178.xxx.xxx.xxx
- ReqHeader X-Forwarded-For: 1178.xxx.xxx.xxx, 10.xxx.xxx.xxx
- VCL_gọi RECV
- Yêu cầu bỏ đặt cookie: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; __utma=46365988.836346559.1644414441.16
- Cookie ReqHeader: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; cs_fpid=1645804349272_22538249; wt_geid
- Yêu cầu bỏ đặt cookie: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; cs_fpid=1645804349272_22538249; wt_geid
- Cookie ReqHeader: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; cs_fpid=1645804349272_22538249; wt_geid
- Yêu cầu bỏ đặt cookie: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; cs_fpid=1645804349272_22538249; wt_geid
- Cookie ReqHeader: wt_rla=292330999892453%2C2%2C1646731482026; _pipe_c=do_not_track; _ga=GA1.2.836346559.1644414441; __gads=ID=453223b8518b57e5-22f191e137cd00c3:T=1644414444:RT=1644414444:S=ALNI_MbCUi8liJ5sbhjlTe68z1BhLhZJCQ; cs_fpid=1645804349272_22538249; wt_geid
- Hàm băm VCL_return
- Mã hóa chấp nhận ReqUnset: gzip, deflate, br
- Mã hóa chấp nhận ReqHeader: gzip
- VCL_cuộc gọi HASH
- tra cứu VCL_return
- Lượt 1410469
- VCL_cuộc gọi HIT
- VCL_trả lại giao hàng
- RespProtocol HTTP/1.1
- Phản hồi Trạng thái 200
- RespReason OK
- Ngày RespHeader: Thứ Sáu, ngày 11 tháng 3 năm 2022 10:42:05 GMT
- Máy chủ RespHeader: Apache-Coyote/1.1
- Kiểu nội dung RespHeader: text/html;charset=UTF-8
- Cookie đặt RespHeader: JSESSIONID=F8D07853DF7D90A3F381B316F64FA285; Đường dẫn=/; httpOnly
- RespHeader X-Varnish: 1410492 1410469
- Người đứng đầu Tuổi: 84
- RespHeader Qua: 1.1 vecni-v4
- VCL_cuộc gọi GIAO HÀNG
- RespHeader X-Cache-Host: rsi-prod-varnish45
- RespHeader X-Frame-Options: SAMEORIGIN
- RespHeader X-XSS-Protection: 1; chế độ = khối
- RespHeader X-Content-Type-Options: nosniff
- RespHeader Content-Security-Policy: script-src 'self' 'unsafe-inline' 'unsafe-eval' *
- RespHeader X-Cache: HIT
- RespHeader X-Cache-Lượt truy cập: 3
- RespHeader X-Grace-Hit: có
- VCL_trả lại giao hàng
- Quá trình Dấu thời gian: 1646995409.603614 0.000222 0.000222
- Phạm vi chấp nhận của RespHeader: byte
- Độ dài nội dung của RespHeader: 191244
- Gỡ lỗi "RES_MODE 2"
- Kết nối RespHeader: đóng
- Dấu thời gian Phản hồi: 1646995409.608024 0.004632 0.004410
- Yêu cầuAcct 1130 0 1130 574 191244 191818
-   Chấm dứt

trình duyệt

* << Yêu cầu >> 1410496
- Bắt đầu yêu cầu 1410495 rxreq
- Dấu thời gian Bắt đầu: 1646995426.730217 0.000000 0.000000
- Dấu thời gian Yêu cầu: 1646995426.730217 0.000000 0.000000
- Yêu cầu Bắt đầu 10.xxx.xxx.xxx 60908
- ReqMethod NHẬN
- Yêu cầu URL /
- Giao thức yêu cầu HTTP/1.1
- Máy chủ ReqHeader: www.example.com
- Tác nhân người dùng ReqHeader: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
- ReqHeader chấp nhận: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
- Ngôn ngữ chấp nhận ReqHeader: it,it-IT;q=0.8,en-US;q=0.5,en;q=0.3
- Mã hóa chấp nhận ReqHeader: gzip, deflate, br
- Cookie ReqHeader: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; __utma=46365988.1217589648.1620392041.1638545296.1642173864.10; __utmz=46365988.16
- Yêu cầu nâng cấp-không an toàn-ReqHeader: 1
- Kiểm soát bộ đệm ReqHeader: max-age=0
- ReqHeader x-chuyển tiếp-proto: https
- ReqHeader x-forwarded-ssl: bật
- Cổng chuyển tiếp x ReqHeader: 443
- ReqHeader x-forwarded-for: 178.xxx.xxx.xxx
- Kết nối ReqHeader: đóng
- ReqUnset x-forwarded-for: 178.xxx.xxx.xxx
- ReqHeader X-Forwarded-For: 178.xxx.xxx.xxx, 10.xxx.xxx.xxx
- VCL_gọi RECV
- Yêu cầu bỏ đặt cookie: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; __utma=46365988.1217589648.1620392041.1638545296.1642173864.10; __utmz=46365988.16
- Cookie ReqHeader: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
- Yêu cầu bỏ đặt cookie: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
- Cookie ReqHeader: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
- Yêu cầu bỏ đặt cookie: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
- Cookie ReqHeader: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
- Hàm băm VCL_return
- Mã hóa chấp nhận ReqUnset: gzip, deflate, br
- Mã hóa chấp nhận ReqHeader: gzip
- VCL_cuộc gọi HASH
- tra cứu VCL_return
- VCL_cuộc gọi BỎ LỠ
- Tìm nạp VCL_return
- Liên kết tìm nạp bereq 1410497
- Tìm nạp dấu thời gian: 1646995426.730455 0.000238 0.000238
- RespProtocol HTTP/1.1
- Phản hồi Trạng thái 503
- Tìm nạp phụ trợ RespReason không thành công
- Ngày RespHeader: Thứ Sáu, ngày 11 tháng 3 năm 2022 10:43:46 GMT
- Máy chủ RespHeader: Varnish
- Kiểu nội dung RespHeader: text/html; bộ ký tự = utf-8
- RespHeader Thử lại sau: 5
- RespHeader X-Véc ni: 1410496
- RespHeader Tuổi: 0
- RespHeader Qua: 1.1 vecni-v4
- VCL_cuộc gọi GIAO HÀNG
- RespHeader X-Cache-Host: rsi-prod-varnish45
- RespHeader X-Frame-Options: SAMEORIGIN
- RespHeader X-XSS-Protection: 1; chế độ = khối
- RespHeader X-Content-Type-Options: nosniff
- RespHeader Content-Security-Policy: script-src 'self' 'unsafe-inline' 'unsafe-eval' *
- RespHeader X-Cache: HIT
- RespHeader X-Cache-Lượt truy cập: 0
- RespHeader X-Grace-Hit: có
- VCL_trả lại giao hàng
- Quá trình Dấu thời gian: 1646995426.730495 0.000278 0.000040
- Độ dài nội dung của RespHeader: 284
- Gỡ lỗi "RES_MODE 2"
- Kết nối RespHeader: đóng
- Dấu thời gian Phản hồi: 1646995426.730527 0.000310 0.000032
- ReqAcct 929 0 929 490 284 774
-   Chấm dứt
** << BeReq >> 1410497
-- Bắt đầu tìm nạp bereq 1410496
-- Dấu thời gian Bắt đầu: 1646995426.730367 0.000000 0.000000
-- BereqMethod NHẬN
-- BereqURL /
-- Giao thức Bereq HTTP/1.1
-- Máy chủ lưu trữ BereqHeader: www.example.com
-- Tác nhân người dùng BereqHeader: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
-- BereqHeader chấp nhận: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
-- BereqHeader chấp nhận ngôn ngữ: it,it-IT;q=0.8,en-US;q=0.5,en;q=0.3
-- Các yêu cầu nâng cấp không an toàn của BereqHeader: 1
-- BereqHeader x-forwarded-proto: https
-- BereqHeader x-forwarded-ssl: bật
-- BereqHeader x-forwarded-port: 443
-- BereqHeader X-Forwarded-For: 178.xxx.xxx.xxx, 10.xxx.xxx.xxx
-- Cookie BereqHeader: _pipe_c=do_not_track; _ga=GA1.2.1217589648.1620392041; __gads=ID=1a22b33c44d55e6f-1a22b33c44d55e6f:T=1620392042:RT=1620392042:S=ALNI_MYR9nyXrxcQ8QV1Y2pNVDp67Gn9-w; wt_rla=292330999892453%2C2%2C1646995242972; cs_fpid=1645855325408_55998969; JESSI
-- Mã hóa Chấp nhận BereqHeader: gzip
-- BereqHeader X-Véc ni: 1410497
-- VCL_gọi BACKEND_FETCH
-- Tìm nạp phụ trợ VCL_Log: v_ssl_ece
-- VCL_return tìm nạp
-- FetchError Director v_ssl_ece không trả về phụ trợ
-- FetchError Không phụ trợ
-- Dấu thời gian Beresp: 1646995426.730387 0.000020 0.000020
-- Lỗi Dấu thời gian: 1646995426.730390 0.000023 0.000003
-- Giao thức Beresp HTTP/1.1
-- BerespStatus 503
-- Dịch vụ BerespReason không khả dụng
-- Tìm nạp phụ trợ BerespReason không thành công
-- BerespHeader Ngày: Thứ Sáu, ngày 11 tháng 3 năm 2022 10:43:46 GMT
-- Máy chủ BerespHeader: Varnish
-- VCL_gọi BACKEND_ERROR
-- Kiểu nội dung BerespHeader: text/html; bộ ký tự = utf-8
-- BerespHeader Thử lại sau: 5
-- VCL_trả lại giao hàng
-- Lưu trữ tạm thời malloc
-- ObjProtocol HTTP/1.1
-- Đối tượng 503
-- Tìm nạp phụ trợ ObjReason không thành công
-- ObjHeader Ngày: Thứ Sáu, ngày 11 tháng 3 năm 2022 10:43:46 GMT
-- Máy chủ ObjHeader: Varnish
-- Loại nội dung ObjHeader: text/html; bộ ký tự = utf-8
-- ObjHeader Thử lại sau: 5
-- Chiều dài 284
-- BereqAcct 0 0 0 0 0 0
--  Chấm dứt

CHỈNH SỬA 2: hàm băm và cookie

Sau nhiều cuộc điều tra, chúng tôi phát hiện ra rằng vấn đề nằm ở cấu hình này:

phụ vcl_hash {
  hash_data( req.url );
  nếu (req.http.host) {
    hash_data( req.http.host );
  } khác {
    hash_data(server.ip);
  }
  # băm cookie cho đối tượng có auth
  nếu (req.http.Cookie) {
    hash_data( req.http.Cookie );
  }
  trả về (tra cứu);
}

Nếu cookie bị xóa khỏi hàm băm vecni, nó sẽ trả về bộ đệm chính xác. Việc đưa cookie vào hàm băm có hữu ích không? Thoạt nhìn, tôi nghĩ vậy, nếu cookie được sử dụng để theo dõi xác thực người dùng. Làm cách nào chúng tôi có thể chỉ bao gồm một số cookie nhất định trong hàm băm (ví dụ: những cookie từ phiên được xác thực) và không bao gồm những cookie không hữu ích cho bộ đệm (ví dụ: những cookie liên quan đến phân tích)?

Điểm:0
lá cờ in

Miễn là tổng giá trị TTL và gia hạn lớn hơn 0, thì không có lần tìm nạp phụ trợ nào được thực hiện.

Nếu TTL của bạn hết hạn, chế độ gia hạn sẽ đảm bảo rằng nội dung cũ được phân phát trong khi thực hiện tìm nạp.

ân sủng, đó là một cũ-trong-khi-xác nhận lại cơ chế, thực sự có thể bị lạm dụng và biến thành một cũ-nếu-lỗi cơ chế. Bằng cách đặt ân hạn đủ cao, người dùng sẽ không bao giờ gặp phải thời gian ngừng hoạt động của phần phụ trợ.

Đây là một số VCL:

vcl 4.1;

tiêu chuẩn nhập khẩu;

phụ vcl_recv {
    if (std.healthy(req.backend_hint)) {
        đặt req.grace = 10s;
    }
}

phụ vcl_backend_response {
    đặt beresp.grace = 24h;
}

Mã VCL này sẽ thực thi gia hạn 24 giờ. Điều này có nghĩa là chương trình phụ trợ của bạn có thể ngừng hoạt động trong một ngày mà không ai để ý. Tuy nhiên, miễn là phần phụ trợ còn khỏe mạnh, Varnish sẽ chỉ sử dụng 10 giây gia hạn.

Điều quan trọng là định nghĩa phụ trợ của bạn có một .probe tài sản đề cập đến một thăm dò kiểm tra sức khỏe, nếu không std.healthy(req.backend_hint) sẽ không bao giờ có thể tạo ra kết quả đúng.

tôi đã sử dụng đặt beresp.grace = 24h mà có thể là quá mức. Bằng cách đặt gia hạn ở thời lượng cao như vậy, các đối tượng này vẫn ở trong bộ đệm trong khi hết hạn. Nếu bạn có một danh mục nội dung lớn cần được lưu vào bộ nhớ cache, điều này có thể ảnh hưởng đến tỷ lệ truy cập của bạn và có thể gây ra việc xóa bộ nhớ cache bắt buộc khi bộ nhớ cache đầy.

QUAN TRỌNG: Varnish Cache 4.1 đã hết hạn sử dụng và không nên được sử dụng. Vui lòng cài đặt Varnish 6.0 LTS hoặc Varnish 7 để thay thế.

Ví dụ VCL của tôi chứa một vcl 4.1; điểm đánh dấu phiên bản sẽ chỉ hoạt động trong Varnish 6 hoặc Varnish 7. Tôi làm điều này với mục đích khuyến khích người dùng sử dụng các phiên bản Varnish gần đây. Bằng cách chuyển cái này sang vcl 4.0; mã có thể sẽ hoạt động trên các phiên bản Varnish cũ hơn. Vui lòng xem xét nâng cấp.

lỗi 503

Dựa trên đầu ra VSL mà bạn đã thêm vào câu hỏi của mình, tôi có thể kết luận rằng bạn đã xác định và sử dụng một đối tượng đạo diễn trong VCL của mình mà không có bất kỳ chương trình phụ trợ nào.

Đây là lỗi tôi tìm thấy trong đầu ra VSL của bạn:

Giám đốc v_ssl_ece không trả lại phụ trợ

Xin vui lòng có một cái nhìn tại các giám đốc tên v_ssl_ece.

  • Kiểm tra xem bạn có cần giám đốc này hay không
  • Kiểm tra nếu nó được chỉ định một cách chính xác thông qua req.backend_hint Trong vcl_recv hoặc thông qua bereq.backend Trong vcl_backend_fetch
  • Kiểm tra tại sao v_ssl_ece không có bất kỳ phụ trợ

Nếu bạn không thể tìm thấy giải pháp, vui lòng chia sẻ tệp VCL đầy đủ của bạn để tôi có thể hỗ trợ.

Erich avatar
lá cờ sn
Cám ơn rất nhiều! Thật không may, tôi không thể cập nhật vecni lên phiên bản mới :-/ Giải pháp của bạn hoạt động rất tốt nếu tôi sử dụng curl, nhưng nếu tôi sử dụng véc ni trình duyệt (chrome hoặc firefox) sẽ trả về lỗi 503. Tôi đã thử mô phỏng một yêu cầu firefox với curl bằng cách sử dụng tất cả các tiêu đề http mà firefox gửi đến máy chủ nhưng véc ni trả về 200 OK nếu tôi sử dụng curl và 503 nếu tôi sử dụng firefox. Bạn có bất cứ manh mối về điều này? Cảm ơn một lần nữa
Thijs Feryn avatar
lá cờ in
Vui lòng thêm đầu ra của `varnishlog -g request -q "ReqUrl eq '/'"` vào câu hỏi. Lệnh này sẽ in nhật ký cho trang chủ. Đảm bảo bạn đang sử dụng trình duyệt để gọi trang chủ. Nếu bạn gặp lỗi, nhật ký có thể cho chúng tôi biết lý do.
Erich avatar
lá cờ sn
Tôi đã thêm đầu ra của `varnishlog -g request -q "ReqUrl eq '/'"` vào câu hỏi, cho cả yêu cầu từ curl và yêu cầu từ firefox. Bạn có thấy điều gì có thể giúp tôi không? Cảm ơn một lần nữa
Thijs Feryn avatar
lá cờ in
@Erich Tôi đã cập nhật câu trả lời với thông tin liên quan đến đầu ra VSL
Erich avatar
lá cờ sn
Xin lỗi vì trả lời muộn của tôi, chúng tôi đã đấu tranh rất nhiều để tìm ra vấn đề. Tôi đã cập nhật lại câu hỏi của mình và tôi hy vọng bạn có một số gợi ý hữu ích. Cám ơn rất nhiều!
Thijs Feryn avatar
lá cờ in
@Erich Vui lòng không thêm cookie vào hàm băm, vì nó sẽ gây ra quá nhiều biến thể bộ đệm và quá nhiều lỗi. Nếu bạn muốn tạo các biến thể bộ nhớ cache dựa trên các giá trị cookie, vui lòng trích xuất các cookie đã chọn và xác thực nội dung của chúng để tránh làm đầy bộ nhớ cache của bạn bằng các biến thể bộ nhớ cache vô nghĩa.
Thijs Feryn avatar
lá cờ in
@Erich Vui lòng thêm mã VCL đầy đủ của bạn, không chỉ trích xuất `hash_data`. Tôi muốn hiểu điều gì đang thực sự xảy ra và cho bạn biết cần thay đổi điều gì để thực thi hành vi *stale if error* khi phần phụ trợ ngừng hoạt động. Phản hồi ban đầu của tôi là `Set-Cookie: JSESSIONID=F8D07853DF7D90A3F381B316F64FA285; Đường dẫn=/; HttpOnly` có thể là lý do tại sao nội dung không được lưu trữ trong bộ đệm. Xem https://www.varnish-software.com/developers/tutorials/varnish-builtin-vcl/#dont-cache-responses-with-set-cookie-headers để biết thêm thông tin.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.