Amazon Simple Workflow Service (Amazon SWF) ช่วยให้นักพัฒนาสามารถสร้าง รัน และปรับขนาดงานในพื้นหลังซึ่งมีขั้นตอนที่ดำเนินควบคู่กันหรือตามลำดับ อาจมองได้ว่า Amazon SWF เป็นหน่วยติดตามสถานะและหน่วยประสานงานซึ่งมีการจัดกาเต็มรูปแบบในระบบคลาวด์
หากขั้นตอนในแอปของคุณกินเวลานานกว่า 500 มิลลิวินาทีจึงจะแล้วเสร็จ ทำให้คุณจำเป็นต้องติดตามสถานะการประมวลผล และจำเป็นต้องกู้คืนหรือลองใหม่หากงานล้มเหลว Amazon SWF สามารถช่วยคุณได้ในเรื่องนี้
หากคุณกำลังมองหาบริการโฟลว์กระบวนการที่แสดงผลด้วยภาพแบบการเขียนโค้ดน้อยที่สุดเพื่อใช้ในการประสานบริการของ AWS, ทำให้กระบวนการทางธุรกิจเป็นอัตโนมัติ หรือสร้างแอปพลิเคชันแบบไร้เซิร์ฟเวอร์ เรียนรู้เพิ่มเติมเกี่ยวกับ AWS Step Functions
ไปที่หน้าเริ่มต้นใช้งานเพื่อรับโค้ดตัวอย่างสำหรับรูปแบบโฟลว์กระบวนการแบบควบคู่กัน แบบตามลำดับ แบบกระจายออก และอื่นๆ
Amazon SWF ส่งเสริมให้มีการแยกลำดับการควบคุมตรรกะตามขั้นตอนงานในพื้นหลังและหน่วยของงานที่แท้จริงซึ่งมีตรรกะธุรกิจที่มีลักษณะเฉพาะตัวของคุณ การทำเช่นนี้จะช่วยให้คุณสามารถแยกจัดการ รักษาและปรับขนาด "เครื่องจักรตามสถานะ" ของแอปพลิเคชันออกจากตรรกะธุรกิจแกนหลักที่แตกต่างกัน เมื่อข้อกำหนดทางธุรกิจเปลี่ยน คุณก็สามารถเปลี่ยนตรรกะแอปพลิเคชันได้อย่างง่ายดายโดยไม่ต้องกังวลเรื่องเครื่องจักรตามสถานะที่แท้จริง การเลือกจ่ายงาน และการควบคุมลำดับงาน
Amazon SWF รันภายในศูนย์ข้อมูลที่มีความพร้อมใช้งานสูงของ Amazon ดังนั้น กลไกติดตามสถานะและประมวลผลงานจึงพร้อมใช้งานทุกเวลาที่แอปพลิเคชันจำเป็นต้องใช้ Amazon SWF จะจัดเก็บงานแบบมีการสำรองไว้ เลือกจ่ายงานให้กับส่วนประกอบของแอปพลิเคชันอย่างเชื่อถือได้ ติดตามความคืบหน้าของงานและจัดเก็บสถานะล่าสุดของงานไว้
Amazon SWF แทนที่โซลูชันโฟลว์กระบวนการแบบกำหนดโค้ดเฉพาะและซอฟต์แวร์กระบวนการอัตโนมัติซึ่งมีความซับซ้อน ด้วยบริการเว็บโฟลว์กระบวนการบนระบบคลาวด์ที่มีการจัดการอย่างเต็มรูปแบบ ซึ่งช่วยขจัดความจำเป็นที่นักพัฒนาจะต้องจัดการเรื่องระบบขั้นตอนโครงสร้างพื้นฐานของการทำให้กระบวนการเป็นอัตโนมัติ นักพัฒนาจึงสามารถมุ่งความสนใจไปที่ฟังก์ชันการทำงานเฉพาะตัวของแอปพลิเคชันของตน
Amazon SWF สามารถปรับขนาดให้เข้ากับการใช้งานแอปพลิเคชันของคุณได้อย่างราบรื่น คุณไม่จำเป็นต้องดูแลบริการโฟลว์กระบวนการด้วยตนเองในตอนที่คุณเพิ่มจำนวนโฟลว์กระบวนการบนระบบคลาวด์ลงในแอปพลิเคชัน หรือเพิ่มความซับซ้อนของโฟลว์กระบวนการของคุณ
Amazon SWF ช่วยให้คุณเขียนส่วนประกอบและตรรกะในการทำงานประสานกันของแอปพลิเคชันเป็นภาษาโปรแกรมใดๆ ก็ได้และสามารถรันในระบบคลาวด์หรือในองค์กรก็ได้
การเข้ารหัสวิดีโอโดยใช้ Amazon S3 และ Amazon EC2 ในกรณีการใช้งานนี้ วิดีโอขนาดใหญ่จะมีการอัปโหลดไปยัง Amazon S3 เป็นก้อน การอัปโหลดข้อมูลเป็นก้อนจะต้องมีการเฝ้าติดตาม หลังจากอัปโหลดก้อนข้อมูลแล้ว ก็จะเข้ารหัสโดยการดาวน์โหลดเข้าไปใน Amazon EC2 instance ก้อนข้อมูลที่เข้ารหัสแล้วจะจัดเก็บในสถานที่ตั้งอีกแห่งหนึ่งของ Amazon S3 หลังจากที่ก้อนข้อมูลทั้งหมดถูกเข้ารหัสแล้วด้วยวิธีนี้ ก็จะนำไปผสมรวมกับไฟล์ที่เข้ารหัสโดยสมบูรณ์แล้วซึ่งจัดเก็บกลับไปทั้งหมดที่ Amazon S3 อาจเกิดภาวะขัดข้องขึ้นได้ในระหว่างขั้นตอนนี้อันเนื่องมาจากพบข้อผิดพลาดในการเข้ารหัสของก้อนข้อมูลอย่างน้อยหนึ่งก้อน ภาวะขัดข้องดังกล่าวจำเป็นจะต้องมีการตรวจจับและจัดการผ่านระบบจัดการโฟลว์กระบวนการบนระบบคลาวด์ของ Amazon SWF
การโยกย้ายส่วนประกอบจากศูนย์ข้อมูลไปยังระบบคลาวด์ การดำเนินการที่สำคัญทางธุรกิจจะมีการโฮสต์ในศูนย์ข้อมูลส่วนบุคคล แต่ก็จำเป็นต้องย้ายทั้งหมดมาที่ระบบคลาวด์โดยไม่ก่อให้เกิดการขัดจังหวะการทำงาน แอปพลิเคชันที่ใช้ Amazon SWF สามารถผสมผสานหน่วยปฏิบัติงานซึ่งรวมส่วนประกอบที่รันอยู่ในศูนย์ข้อมูลเข้ากับหน่วยปฏิบัติงานที่รันอยู่บนระบบคลาวด์ เพื่อเปลี่ยนผ่านหน่วยปฏิบัติงานในศูนย์ข้อมูลอย่างไร้รอยต่อ จึงเลือกนำหน่วยปฏิบัติงานใหม่ประเภทเดียวกันมาติดตั้งใช้จริงก่อนในระบบคลาวด์ หน่วยปฏิบัติงานในศูนย์ข้อมูลจะยังคงรันอย่างต่อเนื่องตามปกติพร้อมกับหน่วยปฏิบัติงานใหม่ที่ใช้ระบบคลาวด์ หน่วยปฏิบัติงานที่ใช้ระบบคลาวด์จะได้รับการทดสอบและตรวจสอบความถูกต้องโดยการจัดเส้นทางปริมาณงานส่วนหนึ่งผ่านหน่วยเหล่านี้ ในระหว่างการทดสอบนี้ แอปพลิเคชันจะไม่ถูกขัดจังหวะการทำงานเนื่องจากหน่วยปฏิบัติงานในศูนย์ข้อมูลยังคงรันอย่างต่อเนื่อง หลังจากที่ทดสอบสำเร็จ หน่วยปฏิบัติงานในศูนย์ข้อมูลก็จะค่อยๆ หยุดทำงาน และหน่วยปฏิบัติงานในระบบคลาวด์จะปรับเพิ่มขนาดเพื่อย้ายทั้งหมดไปยังแอปพลิเคชันการจัดการโฟลว์กระบวนการบนระบบคลาวด์ ขั้นตอนของโฟลว์กระบวนการบนระบบคลาวด์นี้สามารถดำเนินการซ้ำให้กับหน่วยปฏิบัติงานอื่นๆ ทั้งหมดในศูนย์ข้อมูลได้ เพื่อให้แอปพลิเคชันย้ายไปยังระบบคลาวด์โดยสมบูรณ์ หากเหตุผลทางธุรกิจบางประการทำให้ขั้นตอนการประมวลผลบางอย่างต้องดำเนินการในศูนย์ข้อมูลส่วนบุคคลต่อไป หน่วยปฏิบัติงานเหล่านั้นก็สามารถรันต่อไปในศูนย์ข้อมูลส่วนบุคคลได้และยังคงมีส่วนร่วมในแอปพลิเคชันอยู่
การประมวลผลแค็ตตาล็อกผลิตภัณฑ์ขนาดใหญ่โดยใช้ Amazon Mechanical Turk แม้ว่าจะมีการตรวจสอบความถูกต้องของข้อมูลในแค็ตตาล็อกขนาดใหญ่ แต่ผลิตภัณฑ์ในแค็ตตาล็อกก็จะประมวลผลแบบกลุ่ม สามารถประมวลผลกลุ่มต่างๆ พร้อมกันได้ สำหรับแต่ละกลุ่ม ข้อมูลผลิตภัณฑ์จะดึงมาจากเซิร์ฟเวอร์ในศูนย์ข้อมูลและแปลงเป็นไฟล์ CSV (Comma Separated Values) ที่กำหนดให้ใช้โดย Requester User Interface (RUI) ของ Amazon Mechanical Turk จะอัปโหลด CSV เพื่อใส่ข้อมูลและรัน HIT (Human Intelligence Task) เมื่อรัน HIT เสร็จ ก็จะแปลงไฟล์ CSV ที่ได้มาแบบผันกลับเพื่อให้ได้ข้อมูลกลับมาเป็นรูปแบบเดิม จากนั้น ผลที่ได้ก็จะได้รับการประเมินและผู้ปฏิบัติงานของ Amazon Mechanical Turk ก็จะได้รับเงินสำหรับผลลัพธ์ที่ยอมรับได้ ผลที่ล้มเหลวจะถูกคัดออกและประมวลผลซ้ำ ในขณะที่ผลลัพธ์ของ HIT ที่ยอมรับได้จะนำมาใช้เพื่ออัปเดตแค็ตตาล็อก ในขณะที่ประมวลผลเป็นกลุ่ม ระบบจำเป็นต้องติดตามคุณภาพผู้ปฏิบัติงานของ Amazon Mechanical Turk และปรับการชำระเงินให้สอดคล้อง HIT ที่ล้มเหลวจะมีการจัดกลุ่มใหม่อีกครั้งและส่งมาผ่านไปป์ไลน์นั้นอีกครั้ง