คุณกําลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X info
Apigee Edge ช่วยให้สามารถจัดเก็บข้อมูลในแคชที่รันไทม์เพื่อให้ข้อมูลคงอยู่และดึงข้อมูลได้เร็วขึ้น
- ข้อมูลจะจัดเก็บไว้ในแคชในหน่วยความจำของ Message Processor ในตอนแรก ซึ่งเรียกว่าแคช L1
- แคช L1 ถูกจํากัดด้วยจํานวนหน่วยความจําที่สงวนไว้สําหรับแคชเป็นเปอร์เซ็นต์ของหน่วยความจํา JVM
- ระบบจะเก็บรายการที่แคชไว้ไว้ในแคช L2 ซึ่งผู้ประมวลผลข้อความทุกคนเข้าถึงได้ ดูรายละเอียดเพิ่มเติมได้ที่ส่วนด้านล่าง
- แคช L2 ไม่มีการจํากัดจำนวนรายการแคช แต่ขนาดสูงสุดของรายการที่แคชได้ถูกจํากัดไว้ที่ 256 KB ขนาดแคชที่แนะนำเพื่อประสิทธิภาพที่ดีที่สุดคือ 256 KB
รูปแบบที่ไม่ถูกต้อง
รูปแบบการเขียนโปรแกรมที่ไม่เหมาะสมนี้กล่าวถึงผลกระทบของการละเมิดข้อจำกัดขนาดแคชปัจจุบันภายในแพลตฟอร์ม Apigee Edge
เมื่อแคชข้อมูลที่มีขนาดใหญ่กว่า 256 KB ผลที่ตามมามีดังนี้
- คําขอ API ที่ดําเนินการเป็นครั้งแรกในโปรแกรมประมวลผลข้อความแต่ละรายการต้องรับข้อมูลจากแหล่งที่มาเดิม (นโยบายหรือเซิร์ฟเวอร์เป้าหมาย) แยกต่างหาก เนื่องจากรายการที่มีขนาดมากกว่า 256 KB จะใช้ไม่ได้ในแคช L2
- การจัดเก็บข้อมูลขนาดใหญ่ (> 256 KB) ในแคช L1 มีแนวโน้มที่จะเพิ่มภาระให้กับทรัพยากรของแพลตฟอร์ม ส่งผลให้หน่วยความจำแคช L1 เต็มเร็วขึ้น จึงมีพื้นที่ว่างสำหรับข้อมูลอื่นๆ น้อยลง ด้วยเหตุนี้ คุณจึงแคชข้อมูลได้ไม่ดีเท่าที่ควร
- ระบบจะนำรายการที่แคชไว้ออกจากโปรแกรมประมวลผลข้อความเมื่อถึงขีดจํากัดของจํานวนรายการ ซึ่งจะทำให้ระบบดึงข้อมูลจากแหล่งที่มาเดิมอีกครั้งในโปรแกรมประมวลผลข้อความที่เกี่ยวข้อง
ผลกระทบ
- ระบบจะไม่จัดเก็บข้อมูลที่มีขนาดใหญ่กว่า 256 KB ในแคช L2/แคชถาวร
- การเรียกใช้แหล่งที่มาเดิม (นโยบายหรือเซิร์ฟเวอร์เป้าหมาย) บ่อยขึ้นจะทำให้เวลาในการตอบสนองของคำขอ API เพิ่มขึ้น
แนวทางปฏิบัติแนะนำ
- เราขอแนะนำให้จัดเก็บข้อมูลขนาดไม่เกิน 256 KB ในแคชเพื่อให้ได้ประสิทธิภาพสูงสุด
- หากจำเป็นต้องจัดเก็บข้อมูลมากกว่า 256 KB ให้พิจารณาดังนี้
- การใช้ฐานข้อมูลที่เหมาะกับการจัดเก็บข้อมูลขนาดใหญ่
หรือ
- การบีบอัดข้อมูล
- การใช้ฐานข้อมูลที่เหมาะกับการจัดเก็บข้อมูลขนาดใหญ่