คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่
เอกสารประกอบของ Apigee X info
แนวทางปฏิบัติแนะนำคือตรวจสอบว่าโค้ด Node.js ที่คุณเพิ่มลงในพร็อกซีทำงานได้ก่อนที่จะติดตั้งใช้งาน ใน Edge หัวข้อนี้จะอธิบายวิธีแก้ไขข้อบกพร่องและแก้ปัญหาพร็อกซีที่มีแอปพลิเคชัน Node.js หลังจากติดตั้งใช้งานแล้ว
การเพิ่มขนาดพูลการเชื่อมต่อเพื่อ ปรับปรุงประสิทธิภาพ
หากพบว่าประสิทธิภาพการทำงานช้า คุณอาจแก้ปัญหาได้โดยการเพิ่มขนาดพูลการเชื่อมต่อ Node.js เริ่มต้นด้วย maxSockets หรือ โดย ปิดใช้ การรวมซ็อกเก็ต ทั้งหมด ดูข้อมูลเพิ่มเติมและโค้ดตัวอย่างได้ที่ Node.js เคล็ดลับประสิทธิภาพการทำงาน: การรวมซ็อกเก็ต ในชุมชน Apigee
การดูบันทึก Node.js
วิธีดูข้อมูลบันทึกเกี่ยวกับแอปพลิเคชัน Node.js
- ในหน้าพร็อกซี API หลัก ให้คลิกพร็อกซีที่ต้องการดู
- ในหน้าสรุปของพร็อกซีที่เลือก ให้คลิกบันทึก Node.js ที่ ด้านขวาของแถบเครื่องมือ
ในหน้าบันทึก คุณสามารถเลือกระยะเวลาของบันทึกที่จะดูได้ตามที่แสดงด้านล่าง บันทึกจะบันทึก การเรียกใช้เมธอด HTTP, การเรียกใช้ที่สำเร็จหรือล้มเหลว, ข้อความ console.log และอื่นๆ ป้อนสตริงการค้นหา ในช่องค้นหาเพื่อแสดงรายการบันทึกทั้งหมดที่มีสตริงดังกล่าว

การใช้เครื่องมือติดตาม
เครื่องมือติดตามมีประโยชน์สำหรับการแก้ไขข้อบกพร่องของพร็อกซีทั่วไป ดูข้อมูลโดยละเอียดเกี่ยวกับการใช้เครื่องมือติดตามได้ที่การใช้เครื่องมือติดตาม
การพิมพ์เอาต์พุตคอนโซล
คุณสามารถฝังคำสั่ง console.log ในโค้ด Node.js และดูเอาต์พุตในเครื่องมือติดตาม ได้ ตัวอย่างเช่น คำสั่งต่อไปนี้จะพิมพ์ค่าของตัวแปร config.user:
console.log('Logging in as %s', config.username);

หากต้องการดูเอาต์พุตของข้อความ console.log ในเครื่องมือติดตาม ให้เรียก API ในเครื่องมือติดตาม แล้วคลิก เอาต์พุตจากธุรกรรมทั้งหมด เพื่อ เปิดแผงเอาต์พุต

สมมติว่าคุณเรียกใช้โค้ดต่อไปนี้...
var http = require('http'); console.log('node.js application starting...'); var svr = http.createServer(function(req, resp) { resp.end('Hello, World!'); }); svr.listen(9000, function() { console.log('Node HTTP server is listening'); });
... คำสั่งคอนโซลจะปรากฏในแผงดังนี้

การกำหนดค่าการตั้งค่าการหมดเวลาของเป้าหมาย Nginx
หากคุณใช้ Nginx เป็นพร็อกซีและเห็นข้อผิดพลาด "Bad Gateway" ให้ลองเพิ่มการกำหนดค่าการหมดเวลาของพร็อกซี Nginx ตามที่อธิบายไว้ที่นี่
เช่น
proxy_connect_timeout 60; proxy_read_timeout 120;
การกำหนดค่าการหมดเวลาที่เหมาะสม จะขึ้นอยู่กับระยะเวลาที่เซิร์ฟเวอร์ใช้ในการตอบสนอง เช่น การหมดเวลาในการอ่าน 45-60 วินาทีอาจเหมาะสมเพื่อให้มี บัฟเฟอร์ที่สมเหตุสมผล
การกำหนดค่าการตั้งค่าการหมดเวลาของเป้าหมาย Apigee
นอกจากนี้ คุณยังกำหนดค่าการหมดเวลาเริ่มต้นของ Apigee ในองค์ประกอบ HttpTargetConnection ใน TargetEndpoint ได้ด้วย ค่าเริ่มต้นมีดังนี้
connect.timeout.millis - 60 seconds io.timeout.millis - 120 seconds
<HTTPTargetConnection> <Properties> <Property name="connect.timeout.millis">5000</Property> <Property name="io.timeout.millis">5000</Property> </Properties> <URL>http://www.google.com</URL> </HTTPTargetConnection>
ดูข้อมูลอ้างอิงพร็อพเพอร์ตี้ของปลายทางด้วย
สำหรับข้อมูลเพิ่มเติม
ดูข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขข้อบกพร่องได้ที่
- การใช้เครื่องมือติดตาม
- การใช้เมตริกประสิทธิภาพ
- ข้อมูลเบื้องต้นเกี่ยวกับการแก้ปัญหา
- การตรวจสอบ: ประวัติ API, ผลิตภัณฑ์ และองค์กร
ขั้นตอนถัดไป
ดูข้อมูลเกี่ยวกับการรองรับโมดูล Node.js ใน Apigee Edge ซึ่งรวมถึงข้อมูลเกี่ยวกับ การรองรับ HTTP/HTTPS, TLS และหัวข้อขั้นสูงอื่นๆ ได้ที่ ทำความเข้าใจการรองรับ โมดูล Node.js ของ Edge