Định cấu hình Bộ định tuyến để thử kết nối lại với Trình xử lý thông báo

Edge for Private Cloud phiên bản 4.17.01

Bộ định tuyến kiểm tra tình trạng của Trình xử lý thông báo 5 giây một lần để xác định xem Bộ xử lý thông báo có thể gửi yêu cầu hay không. Nếu Bộ xử lý thông báo gặp sự cố, Bộ định tuyến sẽ tự động chuyển tiếp các yêu cầu đến một Trình 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 gặp sự cố 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 đó sẽ 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 theo 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ã phản hồi đặc biệt do một Trình xử lý thông báo tạo khi mã này ngừng hoạt động. Bộ xử lý thông báo xử lý sẽ cố gắng hoàn thành tất cả các yêu cầu hiện có, nhưng đối với bất kỳ yêu cầu mới nào, Bộ xử lý thông báo phản hồi bằng HTTP 599 sẽ báo hiệu cho Bộ định tuyến để thử lại yêu cầu trên Bộ xử lý thông báo tiếp theo.
  • error: Nếu xảy ra lỗi khi thiết lập kết nối với Bộ xử lý thông báo, chuyển yêu cầu tới bộ xử lý đó hoặc đọc tiêu đề phản hồi từ Bộ xử lý thông báo, Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.
  • timeout: Nếu 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 trình xử lý đó hoặc đọc tiêu đề phản hồi từ Bộ xử lý thông báo, 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ề một phản hồi trống hoặc không hợp lệ, 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 bằng mã HTTP XXX, Bộ định tuyến sẽ chuyển tiếp yêu cầu đến Bộ xử lý thông báo tiếp theo.

Để định cấu hình Bộ định tuyến:

  1. Chỉnh sửa tệp /opt/apigee/customer/application/router.properties (hãy tạo tệp này nếu chưa có).
  2. Thêm thuộc tính conf_load_balancing_load.balancing.driver.nginx.server.retry như bên dưới:
    conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 lỗi
  3. Khởi động lại Bộ định tuyến:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router khởi động lại