Edge for Private Cloud phiên bản 4.17.05
Định cấu hình phản hồi của Bộ định tuyến khi Bộ xử lý thông báo không hoạt động trong quá trình kiểm tra tình trạng
Bộ định tuyến sẽ kiểm tra tình trạng của Bộ xử lý thông báo sau mỗi 5 giây để xác định xem Bộ xử lý thông báo có thể xử lý các yêu cầu hay không. Nếu Bộ xử lý thông báo ngừng hoạt động, Bộ định tuyến sẽ tự động chuyển tiếp các yêu cầu đến một Bộ xử lý thông báo khác.
Bạn có thể định cấu hình cách Bộ định tuyến phản ứng khi Bộ xử lý thông báo ngừng hoạt động bằng cách đặt thuộc tính conf_load_balancing_load.balancing.driver.nginx.server.retry trên Bộ định tuyến. Thuộc tính đó nhận một tập hợp giá trị được phân tách bằng dấu cách, có thể bao gồm:
- off: Tắt tính năng thử lại, Bộ định tuyến sẽ trả về mã lỗi khi có yêu cầu.
- http_599: (Mặc định) Nếu Bộ định tuyến nhận được phản hồi HTTP 599 từ Bộ xử lý thông báo, thì Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.
HTTP 599 là một mã phản hồi đặc biệt do Bộ xử lý thông báo tạo ra khi tắt. Trình xử lý thông báo cố gắng hoàn tất tất cả các yêu cầu hiện có, nhưng đối với mọi yêu cầu mới, trình xử lý này sẽ phản hồi bằng HTTP 599 để báo hiệu cho Bộ định tuyến thử lại yêu cầu trên Trình xử lý thông báo tiếp theo. - error: Nếu xảy ra lỗi trong khi thiết lập kết nối với Trình xử lý thông báo, chuyển yêu cầu đến trình xử lý đó hoặc đọc tiêu đề phản hồi từ trình xử lý đó, thì Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Trình xử lý thông báo tiếp theo.
- timeout: Nếu xảy ra lỗi hết thời gian chờ trong khi thiết lập kết nối với Bộ xử lý thông báo, chuyển yêu cầu đến bộ xử lý đó hoặc đọc tiêu đề phản hồi từ bộ xử lý đó, thì Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.
- invalid_header: Nếu Bộ xử lý thông báo trả về phản hồi trống hoặc không hợp lệ, thì Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.
- http_XXX: Nếu Bộ xử lý thông báo trả về phản hồi có mã HTTP XXX, thì Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.
Cách định cấu hình Bộ định tuyến:
- Chỉnh sửa tệp /opt/apigee/customer/application/router.properties (nếu tệp không tồn tại, hãy tạo tệp).
- Thêm thuộc tính conf_load_balancing_load.balancing.driver.nginx.server.retry
như dưới đây:
conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 error - Đảm bảo tệp thuộc tính thuộc sở hữu của người dùng "apigee":
> chown apigee:apigee /opt/apigee/customer/application/router.properties - Khởi động lại Bộ định tuyến:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
Định cấu hình thời gian chờ của Bộ định tuyến khi truy cập vào Bộ xử lý thông báo trong một yêu cầu proxy API
Bộ định tuyến biên có thời gian chờ đặt trước là 57 giây khi cố gắng truy cập vào Bộ xử lý thông báo trong quá trình xử lý yêu cầu thông qua proxy API. Khi hết thời gian chờ, Bộ định tuyến sẽ cố gắng kết nối với một Bộ xử lý thông báo khác (nếu có). Nếu không, hàm này sẽ trả về lỗi.
Bạn có thể sử dụng hai thuộc tính để kiểm soát thời gian chờ này:
- conf_load_balancing_load.balancing.driver.proxy.read.timeout chỉ định thời gian chờ (tính bằng giây) cho một Trình xử lý thông báo. Giá trị mặc định là 57 giây.
- conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout chỉ định tổng thời gian chờ cho tất cả Bộ xử lý thông báo (tính bằng giây) khi quá trình cài đặt Edge của bạn có nhiều Bộ xử lý thông báo. Giá trị mặc định của thuộc tính này là giá trị hiện tại của conf_load_balancing_load.balancing.driver.proxy.read.timeout, hoặc 57 giây.
Cách định cấu hình Bộ định tuyến:
- Chỉnh sửa tệp /opt/apigee/customer/application/router.properties (nếu tệp không tồn tại, hãy tạo tệp).
- Đặt các thuộc tính như dưới đây:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout=240 - Đảm bảo tệp thuộc tính thuộc sở hữu của người dùng "apigee":
> chown apigee:apigee /opt/apigee/customer/application/router.properties - Khởi động lại Bộ định tuyến:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart