คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
เป้าหมายที่โฮสต์ช่วยให้คุณเรียกใช้แอปพลิเคชัน Node.js ในสภาพแวดล้อมรันไทม์ดั้งเดิมที่ฝากโดย Apigee ได้ เป้าหมายของเป้าหมายที่โฮสต์นั้นง่ายมาก นั่นคือทำให้คุณทำให้แอปพลิเคชันใช้งานได้ในสภาพแวดล้อมแบบเนทีฟที่ปลอดภัย รองรับการปรับขนาด และแยกต่างหาก ซึ่งพร็อกซี Edge API สามารถเรียกแอปพลิเคชันเหล่านั้นว่าเป็นบริการเป้าหมายได้
ดังที่เห็นในภาพต่อไปนี้ พร็อกซี Edge API จะเรียกแอปพลิเคชัน Node.js ที่มีการทำให้ใช้งานได้กับสภาพแวดล้อมเป้าหมายที่โฮสต์ โปรดทราบว่าสภาพแวดล้อมเป้าหมายที่โฮสต์จะกำหนดขอบเขตภายในองค์กร Apigee:environment
การรับพร็อกซี Edge API เพื่อสื่อสารกับแอปพลิเคชันเป้าหมายที่โฮสต์ซึ่งสร้างขึ้นอย่างถูกต้องและทำให้ใช้งานได้แล้วจำเป็นต้องใช้การกำหนดค่าแบบง่ายในปลายทางเป้าหมายของพร็อกซี หากต้องการเริ่มต้นใช้งาน ให้ไปที่บทแนะนำเกี่ยวกับเป้าหมายที่โฮสต์
เป้าหมายที่โฮสต์รองรับรันไทม์ของแอปพลิเคชันใดบ้าง
ปัจจุบันคุณสามารถทำให้แอป Node.js ใช้งานได้เฉพาะกับเป้าหมายที่โฮสต์เท่านั้น
การติดตั้งเป้าหมายที่โฮสต์
เป้าหมายที่โฮสต์ใช้งานได้ในองค์กร Edge Public Cloud ทั้งหมด คุณไม่จำเป็นต้องติดตั้งสิ่งใดเพื่อใช้เป้าหมายที่โฮสต์
ตรวจสอบว่าได้เปิดใช้เป้าหมายที่โฮสต์แล้ว
หากต้องการยืนยันว่าองค์กรได้เปิดใช้เป้าหมายที่โฮสต์ ให้ดูรายละเอียดขององค์กรและตรวจสอบว่าตั้งค่าพร็อพเพอร์ตี้ features.isEdgeFunctionsEnabled
เป็น "จริง" แล้ว พร็อพเพอร์ตี้เป็นแบบอ่านอย่างเดียว
เช่น
https://api.enterprise.apigee.com/v1/organizations/myorg
{ "createdAt":1507572884047, "createdBy":"jdoe@apigee.com", "displayName":"myorg", "environments":[ "prod", "dev", "test", "portal" ], "lastModifiedAt":1507578673194, "lastModifiedBy":"jdoe@apigee.com", "name":"jdoe", "properties":{ "property":[ { "name":"features.isSmbOrganization", "value":"false" }, { "name":"self.service.virtual.host.enabled", "value":"true" }, { "name":"features.isCpsEnabled", "value":"true" }, { "name":"features.isEdgeFunctionsEnabled", "value":"true" } ] }, "type":"paid" }
สิ่งที่คุณต้องทราบเกี่ยวกับเป้าหมายที่โฮสต์
เป้าหมายที่โฮสต์ช่วยให้แอปพลิเคชัน Node.js ทำงานในสภาพแวดล้อมแบบเนทีฟที่ไม่ขึ้นอยู่กับเทคโนโลยีรันไทม์เฉพาะของ Apigee คุณสามารถแก้ไขข้อบกพร่องและทดสอบแอปในเครื่องก่อนที่จะทำให้ใช้งานได้ และมั่นใจได้ว่าเวอร์ชันที่ทำให้ใช้งานได้จะทำงานเหมือนกับที่ทำงานในเครื่อง เมื่อทำให้ใช้งานได้ คุณจะเลือกเวอร์ชันรันไทม์ของแอปพลิเคชันสำหรับเรียกใช้แอปพลิเคชันในเป้าหมายที่โฮสต์ได้ เช่น คุณอาจเลือกเรียกใช้แอป Node.js ในสภาพแวดล้อม v8.10.0 โดยเฉพาะ
ข้อจำกัด
โปรดดูขีดจำกัดการใช้งานเป้าหมายที่โฮสต์ที่หัวข้อขีดจำกัดผลิตภัณฑ์ Apigee
ขั้นตอนพื้นฐานที่ต้องปฏิบัติตาม
หากคุณคุ้นเคยกับการพัฒนาพร็อกซี Edge คุณก็เพียงต้องเรียนรู้ขั้นตอนง่ายๆ ไม่กี่ขั้นตอนเพื่อใช้เป้าหมายที่โฮสต์ให้สำเร็จ โดยพื้นฐานแล้ว คุณจะสร้าง ทำให้ใช้งานได้ และจัดการพร็อกซี Edge สำหรับเป้าหมายที่โฮสต์เช่นเดียวกับที่ดำเนินการสำหรับพร็อกซี Apigee Edge อื่นๆ
หากต้องการใช้เป้าหมายที่โฮสต์ คุณต้องทำงานต่อไปนี้ บทแนะนำจะอธิบายถึงแต่ละงานเหล่านี้โดยละเอียด
- พัฒนาและทดสอบแอปพลิเคชัน Node.js ของคุณในเครื่อง
- สร้างไฟล์ Manifest ในไดเรกทอรีรูทของโปรเจ็กต์แอปพลิเคชัน ไฟล์ Manifest เป็นไฟล์ YAML ที่ระบุข้อมูลที่จำเป็นสำหรับการสร้างและทำให้แอปพลิเคชันใช้งานได้
- เพิ่มแอปพลิเคชันของคุณไปยังพร็อกซี Edge เป็นประเภททรัพยากรที่โฮสต์
- ในปลายทางเป้าหมายของพร็อกซี ให้เพิ่มแท็ก
<HostedTarget/>
ที่ว่างเปล่า แท็กนี้จะบอกให้ Edge ติดตั้งใช้งานแอปพลิเคชัน Node.js กับสภาพแวดล้อมเป้าหมายที่โฮสต์ เช่น
<?xml version="1.0" encoding="UTF-8"?> <TargetEndpoint name="default"> <PreFlow name="PreFlow"> <Request /> <Response /> </PreFlow> <PostFlow name="PostFlow"> <Request /> <Response /> </PostFlow> <Flows /> <HostedTarget /> </TargetEndpoint>
ขอบเขตของแอปพลิเคชันเป้าหมายที่โฮสต์
แอปพลิเคชันเป้าหมายที่โฮสต์มีขอบเขตอยู่ในสภาพแวดล้อมองค์กร Edge ขอบเขตนี้เหมือนกับพร็อกซี Edge ทั้งหมด
แอปพลิเคชันเป้าหมายที่โฮสต์สามารถเข้าถึงข้อมูลพร็อกซีได้หรือไม่
ปัจจุบันแอปเป้าหมายที่โฮสต์ไม่มีสิทธิ์เข้าถึงสภาพแวดล้อมรันไทม์ของพร็อกซี ซึ่งหมายความว่าคุณจะเข้าถึงตัวแปรโฟลว์ แคช และเอนทิตีอื่นๆ จากแอปพลิเคชันเป้าหมายที่โฮสต์โดยตรงไม่ได้
เมื่อใช้ Node.js แบบฝัง (การรองรับ Node.js แบบ Trireme ดั้งเดิมใน Edge) คุณจะใช้ apigee-access เพื่อเข้าถึงตัวแปรโฟลว์และเอนทิตีอื่นๆ ใน Edge ได้ แต่เป้าหมายที่โฮสต์ไม่รองรับโมดูล apigee-access
สำหรับการทำให้ใช้งานได้ของ Node.js
โปรดดูหัวข้อเป็นไปได้ไหมที่จะแก้ปัญหาในกรณีที่ไม่มี Apigee-access
การย้ายโค้ดของแอปพลิเคชันที่มีอยู่ไปยังเป้าหมายที่โฮสต์
ปัจจุบันยังไม่มีเส้นทางการย้ายข้อมูลอัตโนมัติจากแอปพลิเคชัน Node.js แบบฝังแบบ Trireme ไปยังเป้าหมายที่โฮสต์ อย่างไรก็ตาม คุณสามารถแปลงโค้ดของแอปพลิเคชันที่มีอยู่ให้เป็นเป้าหมายที่โฮสต์ด้วยตนเองได้ ดูตัวอย่างได้ที่การย้ายข้อมูลพร็อกซี Node.js ที่มีอยู่ไปยังพร็อกซีเป้าหมายที่โฮสต์