หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
บทนี้แนะนําส่วนประกอบสําคัญของระบบของเราและให้ภาพรวมของสถาปัตยกรรม คอมโพเนนต์เหล่านี้ทํางานร่วมกันเพื่อสร้างแพลตฟอร์มที่มีประสิทธิภาพและยืดหยุ่นสําหรับความต้องการการพัฒนาของคุณ ลองเจาะลึกองค์ประกอบและบทบาทของพวกเขาภายในสถาปัตยกรรมของเรา
สถาปัตยกรรมปริมาณงานผ้า
บางส่วนของประเด็นสําคัญของสถาปัตยกรรมปริมาณงาน Fabric คือ:
ซึ่งจัดการการประมวลผลข้อมูล การจัดเก็บ และการจัดการ ซึ่งจะตรวจสอบโทเค็น Microsoft Entra ID ก่อนประมวลผลและโต้ตอบกับบริการ Azure ภายนอก เช่น Lakehouse
ปริมาณงาน Frontend (FE) มีส่วนติดต่อผู้ใช้สําหรับการสร้างงาน การเขียน การจัดการ และการดําเนินการ
การโต้ตอบกับผู้ใช้ผ่าน FE เริ่มต้นการร้องขอไปยัง BE ไม่ว่าจะโดยตรงหรือทางอ้อมผ่าน Fabric Backend (Fabric BE)
สําหรับแผนภาพรายละเอียดเพิ่มเติมที่แสดงถึงการสื่อสารและการรับรองความถูกต้องของคอมโพเนนต์ต่าง ๆ ดู การรับรองความถูกต้อง Backend และภาพรวม การรับรองความถูกต้องและ ไดอะแกรมภาพรวม การรับรองความถูกต้อง
ส่วนหน้า (FE)
frontend ทําหน้าที่เป็นฐานของประสบการณ์ผู้ใช้ (UX) และลักษณะการทํางาน ที่ดําเนินการภายใน iframe ในพอร์ทัล Fabric โดยให้คู่ค้า Fabric มีประสบการณ์การใช้งานส่วนติดต่อผู้ใช้แบบเฉพาะเจาะจง รวมถึงตัวแก้ไขรายการ ส่วนขยายไคลเอ็นต์ SDK มีอินเทอร์เฟซที่จําเป็น API และฟังก์ชันบูทสเตรปเพื่อแปลงเว็บแอปปกติเป็นเว็บแอป Micro Frontend ที่ทํางานได้อย่างราบรื่นภายในพอร์ทัล Fabric
แบ็กเอนด์ (BE)
Backend คือระบบไฟฟ้าสําหรับการประมวลผลข้อมูลและการจัดเก็บเมตาดาต้า ซึ่งใช้การดําเนินการ CRUD เพื่อสร้างและจัดการรายการปริมาณงานพร้อมกับเมตาดาต้า และดําเนินการงานเพื่อเติมข้อมูลในที่เก็บข้อมูล บริดจ์การสื่อสารระหว่าง frontend และ Backend ถูกสร้างขึ้นผ่าน API สาธารณะ
ปริมาณงานสามารถทํางานได้ในสองสภาพแวดล้อม: ภายในเครื่องและระบบคลาวด์ ในเครื่อง (devmode) ปริมาณงานจะทํางานบนเครื่องของนักพัฒนา ด้วยการเรียกใช้ API ที่จัดการโดยยูทิลิตี้ DevGateway ยูทิลิตี้นี้ยังจัดการการลงทะเบียนปริมาณงานด้วย Fabric ในโหมดคลาวด์ ปริมาณงานจะทํางานบนบริการคู่ค้า ที่มีการเรียกใช้ API โดยตรงไปยังจุดสิ้นสุด HTTPS
สภาพแวดล้อมการพัฒนา
- แพคเกจปริมาณงานโหมดพัฒนา: เมื่อสร้างโซลูชัน backend ใน Visual Studio ใช้การกําหนดค่ารุ่นดีบักเพื่อสร้างแพคเกจ BE NuGet ซึ่งสามารถโหลดลงในผู้เช่า Fabric โดยใช้แอปพลิเคชัน DevGateway
- แพคเกจปริมาณงานโหมดคลาวด์: เมื่อสร้างโซลูชัน BE ใน Visual Studio ให้ใช้การกําหนดค่ารุ่นที่วางจําหน่ายเพื่อสร้างแพคเกจปริมาณงานแบบสแตนด์อโลน (BE และ FE) แพคเกจนี้สามารถอัปโหลดไปยังผู้เช่าได้โดยตรง
- สําหรับรายละเอียดเพิ่มเติมเกี่ยวกับการกําหนดค่าดีบักและรุ่นที่วางจําหน่าย ดู ที่เปลี่ยนการกําหนดค่ารุ่น
โครงสร้างแพคเกจ NuGet ของปริมาณงาน
ปริมาณงานจะถูกรวมเป็นแพคเกจ NuGet รวมส่วนประกอบ Backend และ frontend เข้าด้วยกัน โครงสร้างเป็นไปตามมาตรฐานการตั้งชื่อเฉพาะและบังคับใช้โดย Fabric เพื่อความสอดคล้องในสถานการณ์การอัปโหลด แพคเกจ NuGet ที่ออกแบบมาเพื่อแสดงปริมาณงานมีโครงสร้างเพื่อรวมทั้งส่วนประกอบ Backend และ frontend
โครงสร้าง Backend
ส่วน Backend ประกอบด้วยไฟล์.xml ที่กําหนดปริมาณงานและรายการที่เกี่ยวข้องซึ่งจําเป็นสําหรับการลงทะเบียนด้วย Fabric
ส่วนประกอบหลัก
-
WorkloadManifest.xml- ไฟล์การกําหนดค่าปริมาณงานจําเป็นต้องมีชื่อที่แน่นอนนี้สําหรับการตรวจสอบของ Fabric -
Item1.xml,Item2.xml,...- รายการสําหรับแต่ละรายการที่มีการตั้งชื่อที่ยืดหยุ่นตามรูปแบบ XML
โครงสร้าง Frontend
ส่วน frontend ประกอบด้วย.json ไฟล์ที่อธิบายรายละเอียดผลิตภัณฑ์และรายการสําหรับ frontend พร้อมกับไดเรกทอรี 'assets' สําหรับไอคอน
ส่วนประกอบหลัก
-
Product.json- รายการหลักสําหรับ frontend ของผลิตภัณฑ์ของคุณซึ่งต้องได้รับการตั้งชื่ออย่างแม่นยําเพื่อการตรวจสอบของ Fabric -
Item1.json,Item2.json-...รายการสําหรับแต่ละรายการที่มีการตั้งชื่อที่ยืดหยุ่นตามรูปแบบ JSON json แต่ละรายการสอดคล้องกับรายการแบ็กเอนด์ (เช่น Item1.json ถึง Item1.xml) -
assetsโฟลเดอร์ - จัดเก็บไอคอนicon1.jpgicon2.pngทั้งหมด ใช้...โดย frontend
การปฏิบัติตามโครงสร้างบังคับ
โครงสร้างซึ่งรวมถึงชื่อโฟลเดอร์ย่อยที่เฉพาะเจาะจง ('BE', 'FE', 'assets') เป็นข้อบังคับและบังคับใช้โดย Fabric สําหรับสถานการณ์การอัปโหลดทั้งหมด รวมถึงแพคเกจการทดสอบและการพัฒนา มีการระบุโครงสร้างใน .nuspec ไฟล์ที่พบใน ที่เก็บ ภายใต้ Backend/src/Packages/manifest ไดเรกทอรี
ขีดจำกัด
ข้อจํากัดต่อไปนี้นําไปใช้กับแพคเกจ NuGet ทุกประเภททั้งในโหมดการพัฒนาและโหมดคลาวด์:
- อนุญาตเฉพาะและ
BEโฟลเดอร์ย่อยเท่านั้นFEโฟลเดอร์ย่อยหรือไฟล์อื่นๆ ที่อยู่นอกโฟลเดอร์เหล่านี้ส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด - โฟลเดอร์
BEยอมรับเฉพาะไฟล์เท่านั้น.xmlไฟล์ประเภทอื่นๆ จะส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด - อนุญาตให้มีไฟล์รายการสูงสุด 10 ไฟล์ ซึ่งหมายความว่า
BEโฟลเดอร์สามารถมีไฟล์ได้สูงสุดWorkloadManifest.xml10Item.xmlไฟล์ มีไฟล์รายการมากกว่า 10 ไฟล์ในโฟลเดอร์ทําให้เกิดข้อผิดพลาดในการอัปโหลด - โฟลเดอร์
Assetsย่อยต้องอยู่ภายใต้FEโฟลเดอร์ ซึ่งสามารถประกอบด้วยไฟล์ได้สูงสุด 15 ไฟล์ โดยที่แต่ละไฟล์ต้องมีขนาดไม่เกิน 1.5 MB - อนุญาตเฉพาะชนิดแฟ้มต่อไปนี้ใน
Assetsโฟลเดอร์ย่อย:.jpeg, ,.jpg.png - โฟลเดอร์
FEสามารถมีไฟล์รายการได้สูงสุด 10 ไฟล์บวกหนึ่งproduct.jsonไฟล์ - ขนาดของต้อง
product.jsonไม่เกิน 50 KB - แอสเซทแต่ละแอสเซทภายใน
Assetsโฟลเดอร์ต้องถูกอ้างอิงภายในไฟล์รายการ แอสเซทใด ๆ ที่อ้างอิงจากไฟล์รายการหายไปในAssetsโฟลเดอร์จะส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด - ชื่อไฟล์สําหรับรายการต้องไม่ซ้ํากัน ชื่อไฟล์ที่ซ้ํากันส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด
- ชื่อไฟล์ต้องมีอักขระตัวอักษรและตัวเลข (อังกฤษ) หรือเครื่องหมายยัติภังค์เท่านั้น และต้องมีความยาวไม่เกิน 32 อักขระ การใช้อักขระอื่น ๆ หรือเกินความยาวนี้จะส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด
- ขนาดแพคเกจทั้งหมดต้องไม่เกิน 20 MB
- โปรดดูรายชื่อแฟ้มข้อมูลปริมาณงานสําหรับข้อจํากัดเฉพาะอย่างชัดแจ้ง
โหมดการพัฒนาเฉพาะที่ (devmode)
Backend ของปริมาณงาน (BE) ทํางานบนเครื่องของนักพัฒนา การเรียกใช้ API ปริมาณงานจะถูกส่งผ่าน Azure Relay ด้วยฝั่งปริมาณงานของช่องทาง Azure Relay ที่จัดการโดยยูทิลิตี้บรรทัดคําสั่งพิเศษ DevGateway การเรียกใช้ API ควบคุมปริมาณงานจะถูกส่งโดยตรงจากปริมาณงานไปยัง Fabric ซึ่งเลี่ยงผ่านช่องทาง Azure Relay โปรแกรมอรรถประโยชน์ DevGateway ยังควบคุมการลงทะเบียนของอินสแตนซ์การพัฒนาภายในเครื่องของปริมาณงานด้วย Fabric ภายในบริบทของพื้นที่ทํางานเฉพาะ เมื่อมีการสิ้นสุดของยูทิลิตี้ DevGateway การลงทะเบียนอินสแตนซ์ของปริมาณงานจะถูกถดถอยโดยอัตโนมัติ สําหรับข้อมูลเพิ่มเติม โปรดดู คู่มือการใช้งาน Back-end
เค้าร่าง DevMode BE
โหมดการพัฒนาระบบคลาวด์ (โหมดคลาวด์)
Backend ของปริมาณงาน (BE) ดําเนินการภายในบริการของคู่ค้า การเรียกใช้ API ปริมาณงานจะทําโดยตรงไปยังจุดสิ้นสุด HTTPS ตามที่ระบุในรายการปริมาณงาน ในสถานการณ์นี้ ไม่จําเป็นต้องมียูทิลิตี้ DevGateway การลงทะเบียนปริมาณงานด้วย Fabric สามารถทําได้โดยการอัปโหลดแพคเกจปริมาณงาน NuGet ไปยัง Fabric และเปิดใช้งานปริมาณงานสําหรับผู้เช่าในภายหลัง สําหรับข้อมูลเพิ่มเติม ดูจัดการปริมาณงานใน Fabric