ขอแนะนําปริมาณงาน
บทนี้แนะนําส่วนประกอบสําคัญของระบบของเราและให้ภาพรวมของสถาปัตยกรรม คอมโพเนนต์เหล่านี้ทํางานร่วมกันเพื่อสร้างแพลตฟอร์มที่มีประสิทธิภาพและยืดหยุ่นสําหรับความต้องการการพัฒนาของคุณ ลองเจาะลึกองค์ประกอบและบทบาทของพวกเขาภายในสถาปัตยกรรมของเรา
สถาปัตยกรรมปริมาณงานผ้า
บางส่วนของประเด็นสําคัญของสถาปัตยกรรมปริมาณงาน Fabric คือ:
ซึ่งจัดการการประมวลผลข้อมูล การจัดเก็บ และการจัดการ ซึ่งจะตรวจสอบโทเค็น Microsoft Entra ID ก่อนประมวลผลและโต้ตอบกับบริการ Azure ภายนอก เช่น Lakehouse
ปริมาณงาน Frontend (FE) มีส่วนติดต่อผู้ใช้สําหรับการสร้างงาน การเขียน การจัดการ และการดําเนินการ
การโต้ตอบกับผู้ใช้ผ่าน FE เริ่มต้นการร้องขอไปยัง BE ไม่ว่าจะโดยตรงหรือทางอ้อมผ่าน Fabric Backend (Fabric BE)
สําหรับแผนภาพรายละเอียดเพิ่มเติมที่แสดงถึงการสื่อสารและการรับรองความถูกต้องของคอมโพเนนต์ต่าง ๆ ดู การรับรองความถูกต้อง Backend และภาพรวม การรับรองความถูกต้องและ ไดอะแกรมภาพรวม การรับรองความถูกต้อง
Frontend (FE)
frontend ทําหน้าที่เป็นฐานของประสบการณ์ผู้ใช้ (UX) และลักษณะการทํางาน ที่ดําเนินการภายใน iframe ในพอร์ทัล Fabric โดยให้คู่ค้า Fabric มีประสบการณ์การใช้งานส่วนติดต่อผู้ใช้แบบเฉพาะเจาะจง รวมถึงตัวแก้ไขรายการ ส่วนขยายไคลเอ็นต์ SDK มีอินเทอร์เฟซที่จําเป็น API และฟังก์ชันบูทสเตรปเพื่อแปลงเว็บแอปปกติเป็นเว็บแอป Micro Frontend ที่ทํางานได้อย่างราบรื่นภายในพอร์ทัล Fabric
Backend (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
- ไฟล์การกําหนดค่าปริมาณงานจําเป็นต้องมีชื่อที่แน่นอนนี้สําหรับการตรวจสอบของ FabricItem1.xml
,Item2.xml
,...
- รายการสําหรับแต่ละรายการที่มีการตั้งชื่อที่ยืดหยุ่นตามรูปแบบ XML
โครงสร้าง Frontend
ส่วน frontend ประกอบด้วย.json ไฟล์ที่อธิบายรายละเอียดผลิตภัณฑ์และรายการสําหรับ frontend พร้อมกับไดเรกทอรี 'assets' สําหรับไอคอน
ส่วนประกอบหลัก
Product.json
- รายการหลักสําหรับ frontend ของผลิตภัณฑ์ของคุณซึ่งต้องได้รับการตั้งชื่ออย่างแม่นยําเพื่อการตรวจสอบของ FabricItem1.json
,Item2.json
-...
รายการสําหรับแต่ละรายการที่มีการตั้งชื่อที่ยืดหยุ่นตามรูปแบบ JSON json แต่ละรายการสอดคล้องกับรายการแบ็กเอนด์ (เช่น Item1.json ถึง Item1.xml)assets
โฟลเดอร์ - จัดเก็บไอคอนicon1.jpg
icon2.png
ทั้งหมด ใช้...
โดย frontend
การปฏิบัติตามโครงสร้างบังคับ
โครงสร้างซึ่งรวมถึงชื่อโฟลเดอร์ย่อยที่เฉพาะเจาะจง ('BE', 'FE', 'assets') เป็นข้อบังคับและบังคับใช้โดย Fabric สําหรับสถานการณ์การอัปโหลดทั้งหมด รวมถึงแพคเกจการทดสอบและการพัฒนา มีการระบุโครงสร้างใน .nuspec
ไฟล์ที่พบใน ที่เก็บ ภายใต้ Backend/src/Packages/manifest
ไดเรกทอรี
ขีดจำกัด
ข้อจํากัดต่อไปนี้นําไปใช้กับแพคเกจ NuGet ทุกประเภททั้งในโหมดการพัฒนาและโหมดคลาวด์:
- อนุญาตเฉพาะและ
FE
โฟลเดอร์ย่อยเท่านั้นBE
โฟลเดอร์ย่อยหรือไฟล์อื่นๆ ที่อยู่นอกโฟลเดอร์เหล่านี้ส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด - โฟลเดอร์
BE
ยอมรับเฉพาะไฟล์เท่านั้น.xml
ไฟล์ประเภทอื่นๆ จะส่งผลให้เกิดข้อผิดพลาดในการอัปโหลด - อนุญาตให้มีไฟล์รายการสูงสุด 10 ไฟล์ ซึ่งหมายความว่า
BE
โฟลเดอร์สามารถมีไฟล์ได้สูงสุดWorkloadManifest.xml
10Item.xml
ไฟล์ มีไฟล์รายการมากกว่า 10 ไฟล์ในโฟลเดอร์ทําให้เกิดข้อผิดพลาดในการอัปโหลด - โฟลเดอร์
Assets
ย่อยต้องอยู่ภายใต้FE
โฟลเดอร์ ซึ่งสามารถประกอบด้วยไฟล์ได้สูงสุด 15 ไฟล์ โดยที่แต่ละไฟล์ต้องมีขนาดไม่เกิน 1.5 MB - อนุญาตเฉพาะชนิดแฟ้มต่อไปนี้ใน
Assets
โฟลเดอร์ย่อย:.jpeg
, ,.jpg
.png
- โฟลเดอร์
FE
สามารถมีไฟล์รายการได้สูงสุด 10 ไฟล์บวกหนึ่งproduct.json
ไฟล์ - แอสเซทแต่ละแอสเซทภายใน
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