ตั้งค่าพร็อกซีดาวน์โหลดของ Flapdoodle ก่อน MongoDB เริ่มทำงาน
ปรับแต่ง DownloadPackage ในการตั้งค่า Flapdoodle แบบอิงทรานซิชัน และจำไว้ว่าแคชที่อุ่นอยู่แล้วอาจข้ามเส้นทางพร็อกซีไปได้
หากการเริ่มทำงานล้มเหลวขณะดึงไฟล์เก็บถาวร MongoDB ให้กำหนดค่าตัวดาวน์โหลดแพ็กเกจของ Flapdoodle รายการพร็อกซี HTTP สามารถให้ปลายทางที่เป็นตัวเลือกสำหรับเส้นทางดาวน์โหลดสาธารณะได้ ไคลเอนต์ฐานข้อมูลยังไม่ได้สร้างการเชื่อมต่อในภายหลัง
การปรับแต่งแบบอิงทรานซิชันสมัยใหม่จัดหาพร็อกซีผ่าน DownloadPackage:
Mongod mongod = new Mongod() {
@Override
public DownloadPackage downloadPackage() {
return DownloadPackage.withDefaults()
.withDownloadConfig(DownloadConfig.defaults()
.withProxyFactory(() -> Proxys.httpProxy("proxy.example", 8080)));
}
};ใช้คลาสจากไลบรารี Flapdoodle MongoDB และ embedded-process ที่เลือกไว้ แล้วใช้ Mongod ที่ปรับแต่งนี้ในแอปพลิเคชันหรือการตั้งค่าการทดสอบ ลัมบดาจัดหาพร็อกซี HTTP ส่วน URL ของไฟล์เก็บถาวรยังคงเป็นปลายทางดาวน์โหลด
การเริ่มทำงานที่สำเร็จจากแคชไม่ได้ใช้พร็อกซีนั้น ทรานซิชันของแพ็กเกจจะตรวจสอบแคชดาวน์โหลดก่อน ดังนั้นควรแยกความแตกต่างระหว่างการพบในแคชกับการดาวน์โหลดไฟล์เก็บถาวรจริงเมื่อประเมินผลการเริ่มทำงาน
รูปแบบนี้เป็นของ API แบบทรานซิชัน ตัวสร้าง RuntimeConfig แบบเก่าและ DownloadConfigBuilderCustomizer เดิมของ Spring Boot ใช้ส่วนติดต่อการปรับแต่งและการจัดวางแคชที่ต่างกัน จับคู่ตัวอย่างกับรุ่นของ dependency ในแอปพลิเคชัน