Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về
Apigee X. thông tin
Các yêu cầu API do ứng dụng khách thực hiện sẽ chuyển qua nhiều thành phần trong Apigee Edge trước khi đến các dịch vụ phụ trợ. Hầu hết các ứng dụng khách đều mong muốn nhận được phản hồi cho các yêu cầu này một cách kịp thời.
Để đạt được phản hồi kịp thời, các giá trị thời gian chờ I/O được đặt trong từng thành phần mà qua đó các yêu cầu API sẽ được chuyển. Nếu bất kỳ thành phần nào trong luồng mất nhiều thời gian hơn thành phần trước đó, thì thành phần trước đó sẽ hết thời gian chờ và phản hồi lại bằng lỗi 504 Gateway Timeout (Lỗi hết thời gian chờ của cổng).
Trong khi định cấu hình thời gian chờ, bạn phải cẩn thận nhất có thể khi định cấu hình các giá trị trong từng thành phần, nếu không, điều này có thể dẫn đến lỗi 504 Gateway Timeout.
Tài liệu này mô tả các phương pháp hay nhất để định cấu hình thời gian chờ I/O trên nhiều thành phần mà qua đó các yêu cầu API sẽ chuyển trong Apigee Edge.
Các phương pháp hay nhất để định cấu hình thời gian chờ I/O
Hãy cân nhắc các phương pháp hay nhất sau đây khi định cấu hình thời gian chờ I/O:
- Thành phần đầu tiên: Luôn sử dụng thời gian chờ cao nhất trên thành phần đầu tiên trong luồng yêu cầu API, tức là Ứng dụng khách trong Apigee Edge.
- Thành phần cuối cùng: Luôn sử dụng thời gian chờ thấp nhất trên thành phần cuối cùng trong luồng yêu cầu API, đó là Dịch vụ phụ trợ trong Apigee Edge.
- Giữa các thành phần: Đảm bảo rằng có sự khác biệt ít nhất 2-3 giây trong giá trị thời gian chờ được định cấu hình trong mỗi thành phần giữa thành phần đầu tiên và thành phần cuối cùng trong luồng.
- Bộ định tuyến: Bạn luôn nên định cấu hình (sửa đổi) giá trị thời gian chờ I/O cho một máy chủ ảo cụ thể thay vì định cấu hình giá trị này trên Bộ định tuyến. Điều này đảm bảo rằng giá trị thời gian chờ mới chỉ ảnh hưởng đến những Proxy API đang sử dụng máy chủ ảo cụ thể chứ không phải tất cả Proxy API do Trình định tuyến phân phát.
Chỉ định cấu hình (sửa đổi) thời gian chờ I/O trên Trình định tuyến khi bạn hoàn toàn chắc chắn rằng giá trị thời gian chờ I/O mới là bắt buộc hoặc áp dụng cho tất cả Proxy API đang chạy trên Trình định tuyến.
- Trình xử lý thông báo: Bạn luôn nên định cấu hình (sửa đổi) giá trị thời gian chờ I/O cho một proxy API cụ thể thay vì định cấu hình giá trị này trên Trình xử lý thông báo. Điều này đảm bảo rằng giá trị thời gian chờ mới chỉ ảnh hưởng đến proxy API cụ thể chứ không phải tất cả proxy API do Trình xử lý thông báo phân phát.
Chỉ định cấu hình (sửa đổi) thời gian chờ I/O trên Trình xử lý thông báo khi bạn hoàn toàn chắc chắn rằng giá trị thời gian chờ I/O mới là bắt buộc hoặc áp dụng cho tất cả Proxy API đang chạy trên Trình xử lý thông báo.
Các trường hợp ví dụ
Các trường hợp trong phần này có thể giúp bạn hiểu cách thiết lập chính xác các giá trị thời gian chờ I/O.
Tình huống 1: Yêu cầu trực tiếp đến Apigee Edge từ các ứng dụng khách
Phần này mô tả các phương pháp hay nhất cần làm theo khi thiết lập giá trị thời gian chờ trong một chế độ thiết lập Apigee Edge không có thành phần trung gian giữa ứng dụng khách và Apigee Edge cũng như giữa Apigee Edge và máy chủ phụ trợ của bạn.
Mẫu thiết lập Apigee không có thành phần trung gian
Nếu bạn thiết lập Apigee Edge như trong sơ đồ trên mà không có thành phần trung gian, hãy sử dụng các phương pháp hay nhất sau:
- Ứng dụng khách là thành phần đầu tiên trong luồng. Bạn nên đặt giá trị thời gian chờ cao nhất trên ứng dụng.
- Máy chủ phụ trợ là thành phần cuối cùng trong luồng. Bạn nên đặt giá trị thời gian chờ thấp nhất trên máy chủ phụ trợ.
- Định cấu hình các giá trị thời gian chờ trên từng thành phần theo thứ tự sau:
Ví dụ sau đây cho thấy các giá trị thời gian chờ được đặt trên nhiều thành phần theo nguyên tắc nêu trên để tránh mọi vấn đề:
Tình huống 2: Yêu cầu gửi đến Apigee Edge từ các ứng dụng khách thông qua các thành phần trung gian
Phần này mô tả các phương pháp hay nhất cần làm trong khi thiết lập giá trị thời gian chờ trong một chế độ thiết lập Apigee Edge có một hoặc nhiều thành phần trung gian giữa ứng dụng khách và Apigee Edge, cũng như giữa Apigee Edge và máy chủ phụ trợ của bạn.
Các thành phần trung gian có thể là bộ cân bằng tải, mạng phân phối nội dung (CDN), NGINX, v.v.
Thiết lập Apigee mẫu với một thành phần trung gian giữa Ứng dụng và Apigee Edge và giữa Apigee Edge và máy chủ phụ trợ
Nếu bạn thiết lập Apigee Edge như trong sơ đồ trên, với một hoặc nhiều thành phần trung gian, hãy sử dụng các phương pháp hay nhất sau:
- Ứng dụng khách là thành phần đầu tiên trong luồng. Bạn nên đặt giá trị thời gian chờ cao nhất trên máy khách.
- Máy chủ phụ trợ là thành phần cuối cùng trong luồng. Bạn nên đặt giá trị thời gian chờ thấp nhất trên máy chủ phụ trợ.
- Định cấu hình các giá trị thời gian chờ trên từng thành phần, bao gồm cả các thành phần trung gian, theo thứ tự sau:
Ví dụ sau đây cho thấy các giá trị thời gian chờ được đặt trên nhiều thành phần theo nguyên tắc nêu trên để tránh mọi vấn đề: