บทนำ
บทความนี้ประกอบด้วยข้อมูลเกี่ยวกับสถานการณ์การควบคุมปริมาณและข้อจำกัดสำหรับเวิร์กโฟลว์ที่ใช้ชนิดของแพลตฟอร์มเวิร์กโฟลว์ SharePoint ๒๐๑๓ใน SharePoint และ Project ใน Microsoft ๓๖๕
หมายเหตุ: เวิร์กโฟลว์ SharePoint ๒๐๑๐ได้รับการถอนการติดตั้งตั้งแต่วันที่1สิงหาคม๒๐๒๐สำหรับผู้เช่าใหม่และถูกนำออกจากผู้เช่าที่มีอยู่แล้วในวันที่1พฤศจิกายน๒๐๒๐ ถ้าคุณกำลังใช้เวิร์กโฟลว์ SharePoint ๒๐๑๐เราขอแนะนำให้โยกย้ายไปยัง Power อัตโนมัติหรือโซลูชันที่ได้รับการสนับสนุนอื่นๆ สำหรับข้อมูลเพิ่มเติมให้ดูที่การเกษียณอายุเวิร์กโฟลว์ของ SharePoint ๒๐๑๐
ข้อมูลเพิ่มเติม
เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการควบคุมปริมาณใน SharePoint ให้ไปที่วิธีการ: หลีกเลี่ยงการปริมาณหรือการบล็อกใน SharePoint
เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับขีดจำกัดของข้อความอีเมลสำหรับเวิร์กโฟลว์ SharePoint ให้ไปที่ข้อผิดพลาด "ข้อจำกัดของอีเมลในชีวิตประจำวันและเวิร์กโฟลว์ของคุณถูกระงับชั่วคราว" ใน SharePoint
กิจกรรมเวิร์กโฟลว์ของ SharePoint ๒๐๑๓สามารถควบคุมได้ด้วยการควบคุมปริมาณสองระดับดังนี้
-
การควบคุมปริมาณ SharePoint
-
การควบคุมปริมาณบริการเวิร์กโฟลว์
การควบคุมปริมาณบริการเวิร์กโฟลว์
การควบคุมปริมาณจะดำเนินการเพื่ออนุญาตให้ใช้ทรัพยากรที่เป็นธรรม นอกจากนี้ยังป้องกันสภาพแวดล้อมจากเวิร์กโฟลว์และเวิร์กโฟลว์ที่เป็นอันตรายที่ไม่ต้องติดตามแนวทางปฏิบัติที่ดีที่สุด การควบคุมปริมาณของบริการเวิร์กโฟลว์ไม่ได้ถูกควบคุมโดย SharePoint บริการเวิร์กโฟลว์และ SharePoint เป็นบริการอิสระสองบริการและคำขอ throttles บริการแต่ละรายการในความสนใจของสถานภาพบริการโดยรวม ในบริการเวิร์กโฟลว์การควบคุมปริมาณจะดำเนินการที่ระดับขอบเขตเวิร์กโฟลว์ที่จัดชิดกับไซต์ SharePoint การควบคุมปริมาณไม่ได้เป็นการลงบัญชีส่วนกลาง บริการแต่ละเวิร์กโฟลว์จะติดตามการใช้งานขอบเขตของเวิร์กโฟลว์อย่างอิสระ อาจมีเวิร์กโฟลว์อย่างน้อยหนึ่งเวิร์กโฟลว์ในขอบเขตเวิร์กโฟลว์ การควบคุมปริมาณเวิร์กโฟลว์เป็นแบบไดนามิกและจะ reevaluated เป็นระยะๆตามขอบเขตของเวิร์กโฟลว์และการสิ้นสุดการบริการเวิร์กโฟลว์หลังสิ้นสุด
บริการเวิร์กโฟลว์ยังจำกัดจำนวนคำขอขาออกที่อินสแตนซ์เวิร์กโฟลว์เดียวสามารถสร้างได้ ในช่วงเวลา24ชั่วโมงอินสแตนซ์เวิร์กโฟลว์เดียวสามารถสร้างการร้องขอขาออกได้สูงสุด๕,๐๐๐ หลังจากการร้องขอขาออกของ๕,๐๐๐จะถูกสร้างขึ้นในช่วงเวลา24ชั่วโมงเวิร์กโฟลว์จะถูกระงับโดยบริการเวิร์กโฟลว์
หน้าสถานะเวิร์กโฟลว์สำหรับเวิร์กโฟลว์จะมีข้อมูลเกี่ยวกับเวิร์กโฟลว์ที่ถูกระงับ ในสถานการณ์สมมตินี้บอลลูนข้อมูลสำหรับสถานะภายใน จะแสดงข้อความต่อไปนี้:
-
อินสแตนซ์ได้เกินโควตาการร้องขอ http ขาออกสำหรับ 1.00:00:00 เวลา ข้อจำกัดของการร้องขอ๕๐๐๐ได้รับการส่งถึงในเวลาที่ <>
หมายเหตุ: พื้นที่ที่สำรองไว้ของ <> แสดงถึงเวลาที่ใช้ในการเข้าถึงขีดจำกัดของคำขอ๕,๐๐๐สำหรับเวิร์กโฟลว์ของคุณ
คุณสามารถใช้อินสแตนซ์เวิร์กโฟลว์ที่ถูกระงับโดยการคลิกresumeสำหรับเวิร์กโฟลว์หรือโดยการใช้รูปแบบวัตถุไคลเอ็นต์ของเวิร์กโฟลว์ SharePoint หลังจาก24ชั่วโมงได้ผ่านไปแล้ว การดำเนินการนี้ต้องเกิดขึ้นก่อนที่เวิร์กโฟลว์จะสิ้นสุดลง
ถ้าเวิร์กโฟลว์เกินขีดจำกัดการใช้งาน CPU หน้าสถานะเวิร์กโฟลว์สำหรับเวิร์กโฟลว์จะมีข้อมูลเกี่ยวกับเวิร์กโฟลว์ที่ถูกระงับ ในสถานการณ์สมมตินี้บอลลูนข้อมูลสำหรับสถานะภายในจะแสดงข้อความต่อไปนี้:
-
อินสแตนซ์เวิร์กโฟลว์เกินขีดจำกัดการใช้งาน CPU ของ throttle ของ 00:00: 01.2000000 และไม่สามารถยกเลิกการโหลดได้เนื่องจากไม่ได้ persistable
อินสแตนซ์เวิร์กโฟลว์ที่ถูกระงับจะสิ้นสุดลงหลังจากผ่านไป10วัน บอลลูนข้อมูลสำหรับสถานะภายในจะแสดงข้อความต่อไปนี้ถ้าเวิร์กโฟลว์ถูกยกเลิก:
-
WorkflowTerminatedException: มีการย้ายอินสแตนซ์จากสถานะที่ระงับไปยังสถานะหยุดทำงานเนื่องจากมีการหมดอายุแล้ว
ในที่สุดเวิร์กโฟลว์จะถูกล้างข้อมูล หลังจากที่เวิร์กโฟลว์หยุดทำงานจะถูกล้างข้อมูลดังกล่าวจะแสดงข้อความต่อไปนี้:
-
ขออภัย มีบางอย่างผิดพลาด
เราไม่พบเวิร์กโฟลว์นั้น อินสแตนซ์ที่เสร็จสมบูรณ์จะมีการล้างข้อมูลโดยอัตโนมัติ
ขอบเขตของเวิร์กโฟลว์
ขอบเขตเวิร์กโฟลว์
ถูกกำหนดให้เป็นไซต์ในไซต์คอลเลกชัน ตัวอย่างเช่น URL ต่อไปนี้สำหรับไซต์คอลเลกชันรากและจะถือว่าเป็นขอบเขตของเวิร์กโฟลว์:
https://contoso.sharepoint.com/sites/rootsite
ตัวอย่างของขอบเขตเวิร์กโฟลว์อื่นที่อยู่ในไซต์คอลเลกชันเดียวกันมีดังต่อไปนี้ อย่างไรก็ตามขอบเขตเวิร์กโฟลว์นี้อยู่ในไซต์ย่อย
https://contoso.sharepoint.com/sites/rootsite/subsite
การร้องขอคืออะไร
เวิร์กโฟลว์ SharePoint ๒๐๑๓จะถูกสร้างขึ้นเมื่อมีตัวแบบ add-in สำหรับ SharePoint และพวกเขาจะใช้ REST APIs เพื่อโต้ตอบกับข้อมูล SharePoint เมื่อต้องการเรียนรู้เพิ่มเติมให้ไปที่ทำความรู้จักกับบริการส่วนที่เหลือของ SharePoint ๒๐๑๓
การร้องขอคือการโทรผ่านเครือข่ายจากบริการเวิร์กโฟลว์ไปยังจุดสิ้นสุดของ SharePoint หรือ PROJECT REST API ไม่มีความแตกต่างระหว่างชนิดของคำขอหรือการตอบสนองสำหรับคำขอที่ได้รับ การกระทำและกิจกรรมการจัดรูปแบบจะไม่นำไปสู่จำนวนคำขอยกเว้นว่าคำขอเกี่ยวข้องกับ SharePoint ๒๐๑๓ REST API ตัวอย่างเช่นการดำเนินการบันทึกลงในรายการประวัติ อาจสร้างคำขออย่างน้อยห้าคำขอสำหรับการดำเนินการที่มีสุขภาพดี นอกจากนี้ยังมีตรรกะการลองใช้งานอยู่ในเวิร์กโฟลว์ในกรณีที่มีข้อผิดพลาดบางอย่างไม่ถูกต้อง การดำเนินการนี้สามารถสร้างการร้องขอเพิ่มเติมได้
การดำเนินการที่มีการร้องขอการดำเนินการจำนวนมากและสามารถย่อคำขอได้โดยใช้แนวทางปฏิบัติที่ดีที่สุด ตัวอย่างเช่นคุณสามารถใช้การกระทำของรายการการอัปเดตในรายการเดียวแทนที่จะเป็นเขตข้อมูลหลายชุดในการดำเนินการในรายการปัจจุบันเพื่อลดจำนวนของการร้องขอที่ถูกสร้างโดยขอบเขตของเวิร์กโฟลว์และยังให้ผลลัพธ์เดียวกัน
คำแนะนำในการออกแบบเวิร์กโฟลว์
มีหลายวิธีในการสร้างการร้องขอจำนวนมากในเวิร์กโฟลว์ที่สามารถทำให้การควบคุมปริมาณได้ ตัวอย่างทั่วไปบางอย่างมีดังต่อไปนี้:
-
เวิร์กโฟลว์การวนรอบอย่างน้อยหนึ่งรายการหรือเวิร์กโฟลว์การวนรอบอย่างน้อยหนึ่งรายการ
-
เวิร์กโฟลว์ที่เชื่อมโยงกับรายการหรือไลบรารีในขณะที่เนื้อหาถูกโยกย้ายไปยัง SharePoint
-
เวอร์ชันเวิร์กโฟลว์ที่มีปัญหาก่อนหน้านี้ที่ได้รับการแก้ไขแล้วและยังเรียกใช้อินสแตนซ์เวิร์กโฟลว์ที่มีการกำหนดค่าที่มีปัญหาจนกว่าเวิร์กโฟลว์จะสิ้นสุดลง
ขอบเขตเวิร์กโฟลว์การควบคุมปริมาณที่บังคับใช้โดยบริการเวิร์กโฟลว์ควรอนุญาตสำหรับสถานการณ์ปกติของกรณีที่ใช้เวิร์กโฟลว์ อย่างไรก็ตามในฐานะตรรกะของเวิร์กโฟลว์จะมีความซับซ้อนมากขึ้นเวิร์กโฟลว์สามารถเกินขีดจำกัดที่ปลอดภัยได้
สถานการณ์สมมติเวิร์กโฟลว์ที่เฉพาะเจาะจงต่อไปนี้จะทำให้เกิดการควบคุมปริมาณ
สถานการณ์สมมติที่ 1: เวิร์กโฟลว์ที่ลูปเพื่อตรวจสอบการเปลี่ยนแปลง
ตัวอย่างเช่นคุณสามารถตรวจสอบรายการการอัปเดตได้แทนที่จะรอให้รายการถูกอัปเดต
สถานการณ์ที่ 2: การใช้เวิร์กโฟลว์เพื่อดำเนินการอัลกอริทึมที่ซับซ้อน
เวิร์กโฟลว์มีไว้เพื่อจัดการกระบวนการของมนุษย์ที่ขับเคลื่อนด้วยเอกสารและไม่ต้องส่งงานการคำนวณที่สำคัญ
สถานการณ์ที่ 3: การมีเวิร์กโฟลว์หลายเวิร์กโฟลว์ที่ใช้งานที่ใช้กิจกรรมการรอเหตุการณ์ในรายการ "
ในสถานการณ์สมมตินี้เวิร์กโฟลว์แต่ละเวิร์กโฟลว์จะฟังการเปลี่ยนแปลงในรายการเป้าหมาย ถ้ามีเวิร์กโฟลว์จำนวนมากที่ทำงานอยู่แต่ละเวิร์กโฟลว์จะต้องตอบสนองต่อเหตุการณ์ที่ยกกำลังและอาจโทรกลับไปยัง SharePoint เพื่อดำเนินการงานบางอย่าง
หมายเหตุ: สิ่งนี้อาจเกิดขึ้นได้ถ้ามีการเปลี่ยนแปลงของรายการที่เวิร์กโฟลว์ถูกกำหนดค่าให้เริ่มต้นเมื่อมีการสร้างหรือเปลี่ยนแปลงรายการ
ทางเลือกสำหรับสถานการณ์สมมติที่ 1: เวิร์กโฟลว์ที่ลูปเพื่อตรวจสอบการเปลี่ยนแปลง
ตัวเลือกที่ 1: ใช้ add-in ของ SharePoint และตัวรับเหตุการณ์ภายนอก
การออกแบบเวิร์กโฟลว์ควรจะ reevaluated และวิธีการออกแบบที่แตกต่างกันควรใช้ Add-in ของ SharePoint หรือตัวรับเหตุการณ์ภายนอกจะเหมาะสมสำหรับงานนี้
ตัวเลือกที่ 2: เพิ่มการดำเนินการหยุดชั่วขณะ
คุณสามารถปรับปรุงการออกแบบของเวิร์กโฟลว์ได้โดยการเพิ่มการหน่วงเวลา (นั่นคือการดำเนินการหยุดชั่วคราว) การทำเช่นนี้ควรลดปริมาณการใช้งานที่สร้างขึ้น อย่างไรก็ตามจะไม่เปลี่ยนข้อบกพร่องโดยรวมของการออกแบบนี้
ตัวเลือกที่ 3: ใช้กิจกรรม "รอการเปลี่ยนแปลงเขตข้อมูลในรายการปัจจุบัน"
แทนที่จะค้นหาการเปลี่ยนแปลงโดยใช้การวนรอบจะดีกว่าการใช้ตัวรับเหตุการณ์เริ่มต้น เวิร์กโฟลว์สามารถเริ่มต้นได้เมื่อมีการสร้างหรือเปลี่ยนแปลงรายการ การดำเนินการหลายอินสแตนซ์ของเวิร์กโฟลว์แทนที่จะมีเวิร์กโฟลว์หนึ่งในการวนรอบที่รุนแรงคือวิธีที่ดีกว่า เงื่อนไขในเวิร์กโฟลว์สามารถกำหนดค่าให้ทำงานได้เฉพาะเมื่อจำเป็นเท่านั้น
เพียงหนึ่งอินสแตนซ์เวิร์กโฟลว์ของเวิร์กโฟลว์เท่านั้นที่สามารถทำงานได้ในเวลาที่กำหนด
อีกวิธีหนึ่งคือการใช้เขตข้อมูลรอการเปลี่ยนแปลงในกิจกรรมรายการปัจจุบัน
การออกแบบเวิร์กโฟลว์สามารถใช้คอลัมน์ตัวเลือกที่มีค่าหลายค่าเพื่อผลักดันการดำเนินการเวิร์กโฟลว์ เฉพาะเมื่อมีการเลือกตัวเลือกที่เหมาะสมโดยผู้ใช้ที่มีการดำเนินการเวิร์กโฟลว์ การทำเช่นนี้สามารถป้องกันการวนรอบที่รุนแรงและอินสแตนซ์เวิร์กโฟลว์ที่ไม่จำเป็นจากการเริ่มต้นใช้งาน เวิร์กโฟลว์จะดำเนินการเมื่อรายการพร้อมใช้งานแทนที่จะดำเนินการหรือเริ่มต้นหลายอินสแตนซ์
คุณสามารถตรวจสอบค่าหลายค่าได้จากหลายเขตข้อมูลโดยใช้หลายบล็อกแบบขนาน เวิร์กโฟลว์สามารถรอสถานะที่เฉพาะเจาะจงและดำเนินการต่อเพื่อดำเนินการตามเส้นทางที่กำหนดตามตัวอย่างต่อไปนี้:
-
สร้างตัวแปรชนิดบูลีน
-
ตั้งค่าเป็นไม่ใช่
-
แทรกบล็อกแบบขนานให้คลิกขวาที่บล็อกแล้วคลิกคุณสมบัติขั้นสูง
-
ในรายการดรอปดาวน์ให้เลือกตัวแปรที่คุณสร้างในขั้นตอนที่1
-
แทรกสองแบบขนานบล็อกในบล็อกแบบขนานที่แทรกที่มีคุณสมบัติCompletionCondition
-
ในหนึ่งในสองบล็อกแบบขนานที่คุณแทรกไว้ในขั้นตอนที่5ให้แทรกการเปลี่ยนการรอการเปลี่ยนแปลงเขตข้อมูลในกิจกรรมรายการปัจจุบัน เปลี่ยนกิจกรรมเพื่อให้การตรวจสอบคอลัมน์ตัวเลือก ไม่ต้องตรวจสอบตัวเลือกเริ่มต้น
-
ตั้งค่าตัวแปรเวิร์กโฟลว์ที่ใช้ในการหยุดการบล็อกแบบขนานอื่นๆเป็นใช่
-
ทำซ้ำขั้นตอนที่1-7 สำหรับค่าคอลัมน์ตัวเลือกอื่นๆ
-
ย้ายส่วนอื่นของเวิร์กโฟลว์ต้นฉบับไปยังตำแหน่งหลังจากบล็อกแบบขนาน
เมื่อหนึ่งในบล็อกแบบขนานที่ซ้อนกันมีกิจกรรมทั้งหมดที่ดำเนินการบล็อกแบบขนานของแม่จะสิ้นสุดกิจกรรมอื่นในบล็อกแบบขนานอื่นๆ การดำเนินการนี้จะเปิดใช้งานเวิร์กโฟลว์เพื่อดำเนินการต่อ บล็อกแบบขนานที่ซ้อนกันจะได้รับการตรวจสอบโดยการบล็อกแบบขนานแม่โดยใช้ตัวแปร
ตัวเลือกที่ 4: เริ่มเวิร์กโฟลว์ SharePoint ๒๐๑๐จากเวิร์กโฟลว์ SharePoint ๒๐๑๓
คุณสามารถใช้ชนิดของแพลตฟอร์มเวิร์กโฟลว์ SharePoint ๒๐๑๐เพื่อทำงานบางอย่างที่ชนิดของแพลตฟอร์มสำหรับเวิร์กโฟลว์ SharePoint ๒๐๑๓กำลังดำเนินการ การทำเช่นนี้สามารถลดจำนวนการร้องขอได้
โดยเฉพาะเวิร์กโฟลว์ SharePoint ๒๐๑๐สามารถเริ่มต้นการตรวจสอบการเปลี่ยนแปลงเขตข้อมูลโดยใช้การเปลี่ยนแปลงเขตข้อมูลในรายการปัจจุบันหรือเพื่อดำเนินการขั้นพื้นฐานอื่นๆอีกมากมาย
ทางเลือกสำหรับสถานการณ์สมมติที่ 2: การใช้เวิร์กโฟลว์เพื่อดำเนินการอัลกอริทึมที่ซับซ้อน
ถ้าโซลูชันของคุณต้องการงานการคำนวณที่สำคัญคุณควรพิจารณาการพัฒนา add-in สำหรับ SharePoint สำหรับข้อมูลเพิ่มเติมให้ไปที่add-in ของ SharePoint
ยังต้องการความช่วยเหลือหรือไม่ ไปที่ Microsoft Community