Định cấu hình thời gian chờ duy trì hoạt động trên Bộ xử lý thông báo

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Tài liệu này giải thích cách định cấu hình thời gian chờ tiếp tục hoạt động cho Apigee Edge Bộ xử lý tin nhắn.

Thời gian chờ duy trì hoạt động trên Trình xử lý thông báo cho phép một kết nối TCP duy nhất gửi và nhận nhiều yêu cầu/phản hồi HTTP từ/tới máy chủ phụ trợ, thay vì mở một yêu cầu/phản hồi mới kết nối cho mọi cặp yêu cầu/phản hồi.

Giá trị mặc định của thuộc tính thời gian chờ duy trì hoạt động trên Trình xử lý thư là 60 giây. Khoảng thời gian chờ này áp dụng cho những máy chủ phụ trợ đã định cấu hình trong cấu hình thiết bị đầu cuối mục tiêu và trong chính sách ServiceCallout của Proxy API.

Thời gian chờ duy trì hoạt động của Trình xử lý thư có thể tăng hoặc giảm so với giá trị mặc định 60 giây dựa trên nhu cầu của bạn. Bạn có thể định cấu hình ứng dụng này theo các cách sau:

  • Trong proxy API
    • Trong điểm cuối mục tiêu
    • Trong chính sách ServiceCallout
  • Trên Trình xử lý thư

Các thuộc tính sau kiểm soát thời gian chờ duy trì hoạt động trên Bộ xử lý thư:

Tên tài sản Vị trí Mô tả
keepalive.timeout.millis Proxy API:
  • Điểm cuối đích
  • ServiceCallout chính sách

Đây là thời gian không hoạt động tối đa mà Trình xử lý thông báo cho phép một TCP để gửi và nhận nhiều yêu cầu/phản hồi HTTP, thay vì mở một kết nối cho mọi cặp yêu cầu/phản hồi.

Theo mặc định, thuộc tính này lấy giá trị được đặt cho thuộc tính thuộc tính HTTPClient.keepalive.timeout.millis trên Trình xử lý tin nhắn, trong đó giá trị mặc định là 60 giây.

Nếu thuộc tính này được sửa đổi bằng một giá trị thời gian chờ mới cho máy chủ mục tiêu được sử dụng trong điểm cuối đích hoặc chính sách ServiceCallout trong proxy API cụ thể, sau đó thì thời gian tồn tại của máy chủ mục tiêu đó chỉ bị ảnh hưởng.

HTTPClient.keepalive.timeout.millis Trình xử lý tin nhắn

Đây là thời gian không hoạt động tối đa mà Trình xử lý thông báo cho phép một TCP kết nối để gửi và nhận nhiều yêu cầu/phản hồi HTTP, thay vì mở một kết nối mới cho mỗi cặp yêu cầu/phản hồi.

Thuộc tính này được dùng cho tất cả proxy API chạy trên Trình xử lý thư này.

Giá trị mặc định của thuộc tính này là 60 giây.

Bạn có thể sửa đổi thuộc tính này như được giải thích trong Định cấu hình duy trì thời gian chờ trên Bộ xử lý thư bên dưới, hoặc bạn có thể ghi đè giá trị này bằng cách thiết lập thuộc tính keepalive.timeout.millis ở cấp proxy API.

Trước khi bắt đầu

Trước khi làm theo các bước trong tài liệu này, hãy đảm bảo bạn hiểu rõ các chủ đề sau:

Định cấu hình thời gian chờ duy trì hoạt động trong proxy API

Bạn có thể định cấu hình thời gian chờ duy trì hoạt động trong proxy API ở những vị trí sau:

  • Điểm cuối đích
  • ServiceCallout chính sách

Định cấu hình thời gian chờ duy trì hoạt động trong điểm cuối mục tiêu của proxy API

Phần này giải thích cách định cấu hình thời gian chờ duy trì hoạt động trong điểm cuối mục tiêu của Proxy API. Bạn có thể định cấu hình thời gian chờ duy trì hoạt động thông qua tài sản này keepalive.timeout.millis, đại diện cho giá trị thời gian chờ duy trì hoạt động trong mili giây.

  1. Trong giao diện người dùng Edge, hãy chọn proxy API cụ thể mà bạn muốn định cấu hình giữ nguyên giá trị thời gian chờ.
  2. Chọn điểm cuối mục tiêu cụ thể mà bạn muốn sửa đổi.
  3. Thêm thuộc tính keepalive.timeout.millis có giá trị thích hợp trong Phần tử <HTTPTargetConnection> trong cấu hình TargetEndpoint.

    Ví dụ: để thay đổi Thời gian chờ duy trì hoạt động thành 30 giây, hãy thêm phương thức khối mã sau:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    Vì thuộc tính keepalive.timeout.millis tính bằng mili giây, nên giá trị cho 30 giây là 30000.

    Các ví dụ sau đây minh hoạ cách định cấu hình thời gian chờ duy trì hoạt động trong điểm cuối mục tiêu cấu hình proxy API của bạn:

    Ví dụ về cấu hình thiết bị đầu cuối đích sử dụng URL cho máy chủ phụ trợ

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>
    

    Ví dụ về cấu hình thiết bị đầu cuối mục tiêu sử dụng máy chủ đích

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
  4. Lưu các thay đổi đã thực hiện đối với proxy API.

Định cấu hình thời gian chờ duy trì hoạt động trong chính sách ServiceAnnotation của proxy API

Phần này giải thích cách định cấu hình thời gian chờ duy trì hoạt động trong Chính sách ServiceCallout của proxy API. Thời gian chờ duy trì hoạt động có thể là được định cấu hình thông qua thuộc tính the keepalive.timeout.millis, đại diện cho giá trị thời gian chờ duy trì hoạt động tính bằng mili giây.

Để định cấu hình thời gian chờ duy trì hoạt động trong chính sách ServiceCallout bằng cách sử dụng Thuộc tính keepalive.timeout.millis:

  1. Trong giao diện người dùng Edge, hãy chọn proxy API cụ thể mà bạn muốn định cấu hình duy trì giá trị thời gian chờ cho chính sách ServiceCallout.
  2. Chọn chính sách ServiceCallout cụ thể mà bạn muốn sửa đổi.
  3. Thêm thuộc tính keepalive.timeout.millis có giá trị thích hợp trong Phần tử <HTTPTargetConnection> trong cấu hình TargetEndpoint.

    Ví dụ: để thay đổi thời gian chờ duy trì hoạt động thành 30 giây, hãy thêm phương thức khối mã sau:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    Vì thuộc tính keepalive.timeout.millis tính bằng mili giây, nên giá trị cho 30 giây là 30000.

    Các ví dụ sau đây minh hoạ cách định cấu hình thời gian chờ duy trì hoạt động trong Chính sách ServiceCallout của proxy API:

    Ví dụ về cấu hình chính sách ServiceAnnotation sử dụng URL cho máy chủ phụ trợ

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>
    

    Ví dụ về cấu hình chính sách ServiceAnnotation sử dụng máy chủ mục tiêu

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. Lưu các thay đổi đã thực hiện đối với proxy API.

Định cấu hình thời gian chờ duy trì hoạt động trên Bộ xử lý thư

Phần này giải thích cách định cấu hình thời gian chờ duy trì hoạt động trên Bộ xử lý thông báo. Chiến lược phát hành đĩa đơn có thể định cấu hình thời gian chờ duy trì hoạt động thông qua thuộc tính này HTTPClient.keepalive.timeout.millis, biểu thị thời gian chờ duy trì hoạt động tính bằng mili giây trên thành phần Trình xử lý thư. Vì cơ sở lưu trú này được nhận xét Trình xử lý thư, bạn cần sử dụng cú pháp đặc biệt conf/http.properties+HTTPClient.keepalive.timeout.millis như được mô tả trong phần Đặt một mã thông báo đang được nhận xét trong Cách định cấu hình Edge.

Để định cấu hình thời gian chờ duy trì hoạt động trên Bộ xử lý thông báo, hãy làm như sau:

  1. Trên máy Trình xử lý thư, mở tệp sau trong trình chỉnh sửa. Nếu chưa có, hãy tạo đối tượng đó.
    /opt/apigee/customer/application/message-processor.properties
    

    Ví dụ: để mở tệp bằng vi, nhập những thông tin sau:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Thêm một dòng ở định dạng sau vào tệp thuộc tính, thay thế giá trị cho TIME_IN_MILLISECONDS:
    conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
    

    Ví dụ: để thay đổi thời gian chờ duy trì hoạt động trên Trình xử lý thư thành 30 giây, hãy thêm dòng sau:

    conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
    
  3. Lưu các thay đổi.
  4. Đảm bảo tệp thuộc tính thuộc sở hữu của người dùng apigee như minh hoạ dưới đây:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Khởi động lại Trình xử lý thư như minh hoạ dưới đây:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Nếu bạn có nhiều Trình xử lý thư, hãy lặp lại các bước trên cho tất cả Bộ xử lý tin nhắn.

Xác minh thời gian chờ duy trì hoạt động trên Bộ xử lý thư

Phần này giải thích cách xác minh thời gian chờ duy trì hoạt động đã được sửa đổi thành công Trình xử lý thư.

Mặc dù bạn sử dụng cú pháp đặc biệt conf/http.properties+HTTPClient.keepalive.timeout.millis để thiết lập hoạt động hết thời gian chờ trên Trình xử lý thông báo, bạn cần xác minh xem thuộc tính thực tế HTTPClient.keepalive.timeout.millis đã được đặt với giá trị mới.

  1. Trên máy Xử lý thư, hãy tìm kiếm thuộc tính HTTPClient.keepalive.timeout.millis trong /opt/apigee/edge-message-processor/conf và kiểm tra xem thư mục đó có đã được đặt với giá trị mới như sau:
    grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Nếu bạn đặt thành công giá trị thời gian chờ duy trì hoạt động mới trên Trình xử lý thư, thì lệnh ở trên cho thấy giá trị mới trong tệp http.properties.

    Kết quả mẫu từ lệnh trên sau khi bạn đã định cấu hình thời gian chờ duy trì hoạt động thành 30 giây như sau:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
    

    Trong kết quả của ví dụ ở trên, hãy lưu ý rằng thuộc tính Đã đặt giá trị mới cho HTTPClient.keepalive.timeout.millis 30000 trong http.properties. Điều này cho biết ứng dụng vẫn tồn tại thời gian chờ đã được định cấu hình thành công thành 30 giây trên Bộ xử lý thư.

  3. Nếu bạn vẫn thấy giá trị cũ của tài sản HTTPClient.keepalive.timeout.millis, sau đó xác minh rằng bạn đã tuân thủ tất cả các bước được nêu trong Định cấu hình duy trì thời gian chờ trên Bộ xử lý thư chính xác. Nếu bạn đã bỏ lỡ bất kỳ bước nào, hãy lặp lại tất cả các bước một cách chính xác.
  4. Nếu bạn vẫn không thể sửa đổi thời gian chờ duy trì hoạt động, hãy liên hệ với Bộ phận hỗ trợ Apigee Edge của Google Cloud.