การเชื่อมโยงพร็อกซี API เข้าด้วยกัน

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

คุณระบุว่าพร็อกซีหนึ่งเป็นปลายทางเป้าหมายของอีกพร็อกซีหนึ่งได้ โดยเชื่อมต่อพร็อกซี 2 อันในเชนพร็อกซีได้อย่างมีประสิทธิภาพ การผูกพร็อกซีด้วยวิธีนี้จะช่วยให้คุณหลีกเลี่ยงการเชื่อมต่อกับเครือข่ายและช่วยปรับปรุงประสิทธิภาพโดยรวมได้

เมื่อใช้เชนพร็อกซี คุณจะระบุว่าพร็อกซีหนึ่งเป็นปลายทางเป้าหมายภายในของอีกพร็อกซีหนึ่ง แทนที่จะใช้องค์ประกอบ HTTPTargetConnection ในการเรียกไปยังพร็อกซีที่ 2 คุณจะใช้องค์ประกอบ LocalTargetConnection แทน

<LocalTargetConnection>
    <APIProxy>myproxy2</APIProxy>
    <ProxyEndpoint>default</ProxyEndpoint>
</LocalTargetConnection>

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

วิดีโอ: ดูวิดีโอสั้นๆ เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมโยงพร็อกซี API

วิธีการทำงานของเชนพร็อกซี

เชนพร็อกซีใช้การเชื่อมต่อภายในเพื่อลดค่าใช้จ่ายของเครือข่ายเมื่อเรียกใช้พร็อกซีหนึ่งจากอีกพร็อกซีหนึ่ง การเชื่อมต่อเฉพาะที่นี้มีประสิทธิภาพมากกว่าเนื่องจากข้ามฟีเจอร์ต่างๆ ของเครือข่าย เช่น ตัวจัดสรรภาระงาน เราเตอร์ และผู้ประมวลผลข้อความ

ตัวอย่างต่อไปนี้แสดงให้เห็นความแตกต่างระหว่างการเชื่อมต่อพร็อกซีที่ใช้ HTTPTargetConnection และ LocalTargetConnection (เชนพร็อกซี)

คุณเชื่อมต่อพร็อกซีโดยการระบุว่าพร็อกซีหนึ่งเป็นปลายทางเป้าหมายภายในของอีกปลายทางหนึ่ง คุณสร้างการเชื่อมต่อเฉพาะที่ระหว่างพร็อกซีได้ 2 วิธีดังนี้

  • ระบุชื่อของพร็อกซีเป้าหมายและชื่อ ProxyEndpoint
  • ระบุเส้นทางไปยังปลายทางของพร็อกซีเป้าหมาย

คุณเชื่อมต่อพร็อกซีเป้าหมายภายในการกำหนดค่า TargetEndpoint โดยใช้องค์ประกอบ LocalTargetConnection ตามที่อธิบายด้านล่าง

การเชื่อมต่อพร็อกซีตามชื่อพร็อกซี

คุณระบุพร็อกซีเป้าหมายตามชื่อได้ คุณอาจพบว่าการดำเนินการนี้จะมีประโยชน์มากที่สุดเมื่อคุณสร้างการเชื่อมต่อตั้งแต่ต้นและพัฒนาพร็อกซีร่วมกัน หากไม่ทราบชื่อ (หรือชื่ออาจเปลี่ยนไป) ให้พิจารณาเชื่อมต่อกับเส้นทางปลายทางของพร็อกซีเป้าหมายตามที่อธิบายไว้ด้านล่าง

เมื่อคุณเชื่อมต่อกับพร็อกซีเป้าหมายตามชื่อ คุณจะระบุชื่อพร็อกซีและชื่อของ ProxyEndpoint

ตัวอย่างต่อไปนี้ระบุพร็อกซีเป้าหมายที่ชื่อ data-manager พร้อมกับชื่อ ProxyEndpoint ที่ data-manager แสดง โปรดดูข้อมูลอ้างอิงที่ข้อมูลอ้างอิงการกำหนดค่าพร็อกซี API

<TargetEndpoint name="datamanager">
    <PreFlow name="PreFlow">
        <!-- PreFlow policies -->
    </PreFlow>
    <PostFlow name="PostFlow">
        <!-- PostFlow policies -->
    </PostFlow>
    <LocalTargetConnection>
        <APIProxy>data-manager</APIProxy>
        <ProxyEndpoint>default</ProxyEndpoint>
    </LocalTargetConnection>
</TargetEndpoint>

การเชื่อมต่อพร็อกซีตามเส้นทาง

คุณจะระบุพร็อกซีเป้าหมายตามเส้นทางปลายทางได้ คุณอาจต้องทำเช่นนี้เมื่อไม่ทราบชื่อพร็อกซีหรือเมื่อชื่ออาจเปลี่ยนแปลง

หากพร็อกซีของคุณเป็นเพียงผู้บริโภคของพร็อกซีเป้าหมาย เช่น เมื่อคุณไม่ได้พัฒนาทั้ง 2 อย่าง เส้นทางอาจเป็นวิธีที่เชื่อถือได้มากที่สุดในการเชื่อมต่อ เช่น หากทีมอื่นพัฒนาและดูแลพร็อกซีที่คุณเชื่อมต่อ คุณอาจต้องเชื่อมต่อโดยใช้เส้นทางปลายทางที่เชื่อถือได้

ตัวอย่างต่อไปนี้ระบุพร็อกซีเป้าหมายที่ /v1/streetcarts/foodcarts/data-manager โดยถือว่าโฮสต์เหมือนกับพร็อกซีปัจจุบัน โปรดดูข้อมูลอ้างอิงในข้อมูลอ้างอิงการกำหนดค่าพร็อกซี API

<TargetEndpoint name="datamanager">
    <PreFlow name="PreFlow">
        <!-- PreFlow policies -->
    </PreFlow>
    <PostFlow name="PostFlow">
        <!-- PostFlow policies -->
    </PostFlow>
    <LocalTargetConnection>
        <Path>/v1/streetcarts/foodcarts/data-manager</Path> 
    </LocalTargetConnection>
</TargetEndpoint>

การเชื่อมต่อพร็อกซีกับคอนโซลการจัดการ

คุณสร้างการเชื่อมต่อแบบเชนพร็อกซีได้โดยใช้คอนโซลการจัดการ Edge

  1. เปิดพร็อกซีที่จะใช้พร็อกซีเป้าหมาย
  2. ใน Navigator ให้คลิกเครื่องหมายบวกถัดจาก Target Endpoints
  3. ในกล่องโต้ตอบปลายทางเป้าหมายใหม่ ให้ป้อนชื่อของปลายทางเป้าหมาย
  4. ใต้ช่องชื่อปลายทางเป้าหมาย ให้เลือกรายการใดรายการหนึ่งต่อไปนี้
    • ห่วงโซ่พร็อกซีเพื่อเลือกจากรายการพร็อกซีที่มีอยู่แล้วในองค์กรและสภาพแวดล้อม
      1. ในรายการแบบเลื่อนลงชื่อพร็อกซี ให้เลือกพร็อกซีเป้าหมาย
      2. ในช่องปลายทางของพร็อกซี ให้ป้อนเส้นทางปลายทางของพร็อกซีเป้าหมายที่คุณต้องการเชื่อมต่อ
    • Path Chaining เพื่อป้อนเส้นทางฐานพร็อกซีเป้าหมาย เช่น /mypath/myproxy/myendpoint
  5. คลิกเพิ่ม

พร็อกซีแบบเชน ผลิตภัณฑ์ API และการรักษาความปลอดภัย

การทำเชนพร็อกซีจะเหมาะที่สุดสำหรับกรณีที่พร็อกซีทั้ง 2 รายการอยู่ในผลิตภัณฑ์ API เดียวกัน โดยค่าเริ่มต้น ทั้ง 2 อย่างจะใช้ได้กับไคลเอ็นต์ ขณะนี้ Apigee ยังไม่รองรับการรวมพร็อกซีที่ 2 ในผลิตภัณฑ์ API แยกต่างหากซึ่งไคลเอ็นต์ไม่ควรเข้าถึงได้

หากพร็อกซีที่ 2 ต้องมีการรักษาความปลอดภัยจากคำขอของไคลเอ็นต์โดยตรง ให้ลองเพิ่มตรรกะเพื่อให้พร็อกซีที่ 2 ตรวจสอบที่อยู่ IP ของไคลเอ็นต์ ในกรณีที่ทำการโทรผ่านเชน ที่อยู่ IP จะเป็นภายในเครื่อง รหัสของคุณตรวจสอบได้ว่าเป็นรหัสในเครื่องก่อนที่จะอนุญาตให้ประมวลผลต่อไป ดูนโยบายการควบคุมการเข้าถึงเพื่อดูวิธีดำเนินการเพียงวิธีเดียว