การกําหนดค่าระยะหมดเวลาของการเชื่อมต่อในตัวประมวลผลข้อความ

คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่ เอกสารประกอบเกี่ยวกับ Apigee X.
ข้อมูล

เอกสารนี้อธิบายวิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อสำหรับ Apigee Edge Message Processor

ระยะหมดเวลาของการเชื่อมต่อแสดงถึงเวลาที่โปรแกรมประมวลผลข้อความรอในการสร้าง เชื่อมต่อกับเซิร์ฟเวอร์เป้าหมาย ค่าเริ่มต้นของพร็อพเพอร์ตี้ระยะหมดเวลาของการเชื่อมต่อใน ตัวประมวลผลข้อความยาว 3 วินาที ระยะหมดเวลามีผลกับ เซิร์ฟเวอร์แบ็กเอนด์ที่กำหนดค่าในการกำหนดค่าปลายทางเป้าหมายและใน นโยบาย ServiceCallout ของพร็อกซี API

ระยะหมดเวลาของการเชื่อมต่อสำหรับโปรแกรมประมวลผลข้อความสามารถเพิ่มหรือลดจากค่าเริ่มต้น 3 วินาทีได้ตามความต้องการ โดยสามารถกําหนดค่าได้ด้วยวิธีต่อไปนี้

  • ในพร็อกซี API
    • ในปลายทางเป้าหมาย
    • ในนโยบาย ServiceCallout
  • ในตัวประมวลผลข้อความ

คุณสมบัติต่อไปนี้จะควบคุมระยะหมดเวลาของการเชื่อมต่อบนตัวประมวลผลข้อความ

ชื่อพร็อพเพอร์ตี้ ตำแหน่ง คำอธิบาย
connect.timeout.millis พร็อกซี API:
  • ปลายทางเป้าหมาย
  • นโยบาย ServiceCallout

นี่คือเวลาสูงสุดที่ตัวประมวลผลข้อความรอเพื่อเชื่อมต่อกับเซิร์ฟเวอร์เป้าหมาย

โดยค่าเริ่มต้น พร็อพเพอร์ตี้นี้จะใช้ค่าที่กำหนดไว้สำหรับ พร็อพเพอร์ตี้ HTTPClient.connect.timeout.millis ในโปรแกรมประมวลผลข้อความ โดยมีค่าเริ่มต้นเป็น 3 วินาที

หากมีการแก้ไขพร็อพเพอร์ตี้นี้ด้วยค่าระยะหมดเวลาใหม่สำหรับเซิร์ฟเวอร์เป้าหมายที่เชื่อมโยง ด้วยพร็อกซี API ก็จะมีผลต่อเวลาการเชื่อมต่อเฉพาะเซิร์ฟเวอร์เป้าหมายนั้นด้วย

HTTPClient.connect.timeout.millis Message Processor

นี่คือเวลาสูงสุดที่ตัวประมวลผลข้อความรอเพื่อเชื่อมต่อกับเซิร์ฟเวอร์เป้าหมาย

คุณสมบัตินี้ใช้กับพร็อกซี API ทั้งหมดที่กำลังทำงานบนตัวประมวลผลข้อความนี้

ค่าเริ่มต้นของพร็อพเพอร์ตี้นี้คือ 3 วินาที

คุณสามารถแก้ไขพร็อพเพอร์ตี้นี้ได้ตามที่อธิบายไว้ใน การกำหนดค่าระยะหมดเวลาของการเชื่อมต่อบน Message Processor ด้านล่าง หรือคุณจะเขียนทับค่านี้ก็ได้ โดยการตั้งค่าพร็อพเพอร์ตี้ connect.timeout.millis ที่ระดับพร็อกซี API

ก่อนเริ่มต้น

ก่อนที่จะใช้ขั้นตอนในเอกสารนี้ โปรดทำความเข้าใจหัวข้อต่อไปนี้

การกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในพร็อกซี API

คุณกำหนดค่าระยะหมดเวลาของการเชื่อมต่อได้ในพร็อกซี API ในที่ต่อไปนี้

  • ปลายทางเป้าหมาย
  • นโยบาย ServiceCallout

การกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในปลายทางเป้าหมายของพร็อกซี API

ส่วนนี้จะอธิบายวิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในปลายทางเป้าหมายของพร็อกซี API กำหนดค่าระยะหมดเวลาของการเชื่อมต่อได้ผ่านพร็อพเพอร์ตี้ connect.timeout.millis ซึ่งแสดงค่าระยะหมดเวลาของการเชื่อมต่อเป็นมิลลิวินาที

  1. ใน Edge UI ให้เลือกพร็อกซี API เฉพาะที่คุณต้องการกำหนดค่าพร็อกซีใหม่ ค่าระยะหมดเวลาของการเชื่อมต่อ
  2. เลือกปลายทางเป้าหมายที่ต้องการแก้ไข
  3. เพิ่มพร็อพเพอร์ตี้ connect.timeout.millis ด้วยค่าที่เหมาะสมใต้ องค์ประกอบ <HTTPTargetConnection> ในการกำหนดค่า TargetEndpoint

    ตัวอย่างเช่น หากต้องการเปลี่ยนระยะหมดเวลาของการเชื่อมต่อเป็น 5 วินาที ให้เพิ่มพารามิเตอร์ กลุ่มโค้ดต่อไปนี้

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    เนื่องจากพร็อพเพอร์ตี้ connect.timeout.millis อยู่ในหน่วยมิลลิวินาที ค่าสำหรับ 5 วินาทีเท่ากับ 5000

    ตัวอย่างต่อไปนี้แสดงวิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในปลายทางเป้าหมาย การกำหนดค่าพร็อกซี API

    ตัวอย่างการกำหนดค่าปลายทางเป้าหมายโดยใช้ URL สำหรับเซิร์ฟเวอร์แบ็กเอนด์

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

    ตัวอย่างการกำหนดค่าปลายทางเป้าหมายโดยใช้เซิร์ฟเวอร์เป้าหมาย

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
  4. บันทึกการเปลี่ยนแปลงที่ทำในพร็อกซี API

การกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในนโยบาย Servicecallout ของพร็อกซี API

ส่วนนี้อธิบายวิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อใน ServiceCallout ของพร็อกซี API ระยะหมดเวลาของการเชื่อมต่อสามารถกำหนดค่าได้ผ่าน พร็อพเพอร์ตี้ connect.timeout.millis ซึ่งแสดงค่าเวลาเชื่อมต่อใน มิลลิวินาที

วิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในนโยบาย ServiceCallout โดยใช้ พร็อพเพอร์ตี้ connect.timeout.millis:

  1. ใน Edge UI ให้เลือกพร็อกซี API เฉพาะที่คุณต้องการกำหนดค่าพร็อกซีใหม่ ค่าระยะหมดเวลาของการเชื่อมต่อสำหรับนโยบาย ServiceCallout
  2. เลือกนโยบาย ServiceCallout ที่ต้องการแก้ไข
  3. เพิ่มพร็อพเพอร์ตี้ connect.timeout.millis ด้วยค่าที่เหมาะสมภายใต้ องค์ประกอบ <HTTPTargetConnection> ในการกำหนดค่า TargetEndpoint

    ตัวอย่างเช่น หากต้องการเปลี่ยนระยะหมดเวลาของการเชื่อมต่อเป็น 5 วินาที ให้เพิ่มบล็อกโค้ดต่อไปนี้

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    เนื่องจากพร็อพเพอร์ตี้ connect.timeout.millis อยู่ในหน่วยมิลลิวินาที ค่าสำหรับ 5 วินาทีเท่ากับ 5000

    ตัวอย่างต่อไปนี้แสดงวิธีกำหนดค่าระยะหมดเวลาของการเชื่อมต่อใน นโยบาย ServiceCallout ของพร็อกซี API:

    ตัวอย่างการกำหนดค่านโยบายคำขอราคาเสนอบริการโดยใช้ URL สำหรับเซิร์ฟเวอร์แบ็กเอนด์

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

    ตัวอย่างการกำหนดค่านโยบายคำขอราคาเสนอบริการโดยใช้เซิร์ฟเวอร์เป้าหมาย

    <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="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. บันทึกการเปลี่ยนแปลงที่ทำในพร็อกซี API

การกำหนดค่าระยะหมดเวลาของการเชื่อมต่อบน Message Processor

ส่วนนี้จะอธิบายวิธีกำหนดระยะหมดเวลาของการเชื่อมต่อในตัวประมวลผลข้อความ กำหนดค่าระยะหมดเวลาของการเชื่อมต่อได้ผ่านพร็อพเพอร์ตี้ conf_http_HTTPClient.connect.timeout.millis ซึ่งแสดงระยะหมดเวลาของการเชื่อมต่อ เป็นมิลลิวินาทีในคอมโพเนนต์โปรแกรมประมวลผลข้อความ โดยใช้โทเค็นที่เป็นไปตาม ไวยากรณ์ที่อธิบายไว้ใน วิธีกำหนดค่า Edge

ในการกำหนดค่าระยะหมดเวลาของการเชื่อมต่อในตัวประมวลผลข้อความ ให้ทำดังนี้

  1. ให้เปิดไฟล์ต่อไปนี้ในตัวแก้ไขในเครื่องประมวลผลข้อความ หากไม่เป็นเช่นนั้น มีอยู่แล้ว ให้สร้างขึ้นมา
    /opt/apigee/customer/application/message-processor.properties
    

    เช่น หากต้องการเปิดไฟล์โดยใช้ vi ให้ป้อนข้อมูลต่อไปนี้

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. เพิ่มบรรทัดในรูปแบบต่อไปนี้ลงในไฟล์คุณสมบัติ โดยแทนที่ค่า TIME_IN_MILLISECONDS:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
    

    ตัวอย่างเช่น ในการเปลี่ยนระยะหมดเวลาของการเชื่อมต่อบนตัวประมวลผลข้อความเป็น 5 วินาที เพิ่มบรรทัดต่อไปนี้

    conf_http_HTTPClient.connect.timeout.millis=5000
    
  3. บันทึกการเปลี่ยนแปลง
  4. ตรวจสอบว่าผู้ใช้ apigee เป็นเจ้าของไฟล์พร็อพเพอร์ตี้ดังที่แสดงด้านล่าง
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. รีสตาร์ทโปรแกรมประมวลผลข้อความดังที่แสดงด้านล่าง
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. หากคุณมีโปรแกรมประมวลผลข้อความมากกว่า 1 ระบบ ให้ทำขั้นตอนข้างต้นซ้ำในส่วน "ข้อความ" ทั้งหมด ผู้ประมวลผลข้อมูล

กำลังตรวจสอบระยะหมดเวลาของการเชื่อมต่อบน Message Processor

ส่วนนี้อธิบายวิธีตรวจสอบว่าระยะหมดเวลาของการเชื่อมต่อได้รับการแก้ไขเรียบร้อยแล้วเมื่อ Message Processor

แม้ว่าคุณจะใช้โทเค็น conf_http_HTTPClient.connect.timeout.millis ในการตั้งค่า หมดเวลาการเชื่อมต่อใน Message Processor คุณต้องตรวจสอบว่าคุณสมบัติจริง ตั้งค่า HTTPClient.connect.timeout.millis ด้วยค่าใหม่แล้ว

  1. ค้นหาคุณสมบัติในเครื่องประมวลผลข้อความ HTTPTransport.connect.timeout.millis ในช่วง /opt/apigee/edge-message-processor/conf แล้วตรวจสอบว่ามี ด้วยค่าใหม่ดังที่แสดงด้านล่างแล้ว
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. หากกำหนดค่าระยะหมดเวลาของการเชื่อมต่อใหม่ไว้ในโปรแกรมประมวลผลข้อความสำเร็จ ระบบจะดำเนินการดังต่อไปนี้ คำสั่งด้านบนจะแสดงค่าใหม่ในไฟล์ http.properties

    ตัวอย่างผลลัพธ์จากคำสั่งข้างต้นหลังจากที่คุณกำหนดค่าระยะหมดเวลาของการเชื่อมต่อเป็น 5 วินาทีมีดังนี้

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

    ในตัวอย่างเอาต์พุตด้านบน จะเห็นว่าพร็อพเพอร์ตี้ HTTPClient.connect.timeout.millis ได้รับการตั้งค่าด้วยค่าใหม่ 5000 ใน http.properties สิ่งนี้แสดงถึง กำหนดค่าระยะหมดเวลาของการเชื่อมต่อเป็น 5 วินาทีในข้อความ ผู้ประมวลผลข้อมูล

  3. หากคุณยังคงเห็นค่าเดิมของพร็อพเพอร์ตี้ HTTPClient.connect.timeout.millis จากนั้นให้ตรวจสอบว่าคุณได้ทำตามขั้นตอนทั้งหมดที่ระบุใน การกำหนดระยะหมดเวลาของการเชื่อมต่อบน Message Processor อย่างถูกต้อง หากคุณพลาดขั้นตอนใดไป ให้ทำขั้นตอนทั้งหมดซ้ำให้ถูกต้อง
  4. หากยังแก้ไขระยะหมดเวลาของการเชื่อมต่อไม่ได้ โปรดติดต่อทีมสนับสนุนของ Apigee Edge ของ Google Cloud