Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

Service-Oriented Architecture (SOA) คืออะไร?

SOA ย่อมาจาก Service-Oriented Architecture เป็นรูปแบบการออกแบบ (Design Pattern) ที่สร้างขึ้นเพื่อสร้างระบบกระจาย (Distributed Systems) ที่มอบบริการ (Services) ให้กับหลายแอปพลิเคชันผ่านโปรโตคอล เป็นแนวคิด ไม่ผูกมัดกับภาษาโปรแกรมหรือแพลตฟอร์มใดๆ

เป็นสถาปัตยกรรมการออกแบบซอฟต์แวร์ที่คอมโพเนนต์แอปพลิเคชันให้บริการแก่คอมโพเนนต์อื่นๆ ผ่านโปรโตคอลการเชื่อมต่อ โดยทั่วไปผ่านเครือข่าย คุณสมบัติของ Service-orientation เป็นอิสระจากผลิตภัณฑ์ ผู้จัดจำหน่าย หรือเทคโนโลยีใดๆ

SOA ทำให้คอมโพเนนต์ซอฟต์แวร์บนเครือข่ายต่างๆ ทำงานร่วมกันได้ง่ายขึ้น Web Services ที่สร้างตามสถาปัตยกรรม SOA ทำให้ Web Services อิสระมากขึ้น สามารถแลกเปลี่ยนข้อมูลกัน และเนื่องจากหลักการพื้นฐานที่สร้างขึ้น ไม่ต้องการการโต้ตอบของมนุษย์ และไม่ต้องแก้ไขโค้ด ทำให้ Internet Services บนเครือข่ายเชื่อมต่อกันได้อย่างราบรื่น

ความสำคัญของ EAI

กระบวนการทางธุรกิจเกี่ยวข้องกับการโต้ตอบระหว่างหน่วยงานต่างๆ ในองค์กร ซึ่งแปลเป็นการทำให้กระบวนการทางธุรกิจเป็นอัตโนมัติที่ต้องการการโต้ตอบกับแอปพลิเคชันต่างๆ ในองค์กร

ความท้าทายหลักขององค์กร IT เมื่อบูรณาการแอปพลิเคชันเหล่านี้ เกี่ยวข้องกับการบูรณาการโดเมน, สถาปัตยกรรม และเทคโนโลยีที่ต่างกัน ความท้าทายเหล่านี้ทำให้จำเป็นต้องมีกลยุทธ์และสถาปัตยกรรม EAI ที่วางแผนไว้ดี

มี 2 รูปแบบหลักของ EAI: รูปแบบแรกบูรณาการแอปพลิเคชันภายในบริษัท (Intra-EAI) ตอบสนองความต้องการธุรกิจแรก รูปแบบที่สอง (Inter-EAI) เกี่ยวกับการบูรณาการ B2B ตอบสนองความต้องการธุรกิจที่สอง

กลยุทธ์สำหรับ EAI

  • Application Interface Integration - แอปพลิเคชันหนึ่งใช้ฟังก์ชันที่อยู่ในอีกแอปพลิเคชันหนึ่ง อนุญาตให้แบ่งปันคอมโพเนนต์แอปพลิเคชัน

  • Business Method Integration - แอปพลิเคชันหนึ่งใช้บริการทางธุรกิจที่ให้โดยอีกแอปพลิเคชันหนึ่ง

  • Presentation Integration - ให้มุมมองข้อมูลแบบรวม (Unified View) แก่ผู้ใช้ปลายทาง

  • B2B Integration - ให้การบูรณาการแอปพลิเคชันที่อยู่ในองค์กร 2 แห่งที่ต่างกัน

บทบาทของ SOA

กลยุทธ์ที่ดีที่สุดสำหรับ EAI คือ Business Method Integration ซึ่งอนุญาตให้แอปพลิเคชันหนึ่งใช้บริการทางธุรกิจจากอีกแอปพลิเคชัน ทำให้ B2B Integration ง่ายขึ้น ซึ่ง归结為การเลือกเทคโนโลยีสำหรับโปรโตคอลและการขนส่ง (Transport)

โปรโตคอลกำหนด "ภาษา" สำหรับการสื่อสาร และ Transport ขนส่งข้อความตามโปรโตคอลจากแอปพลิเคชันหนึ่งไปอีกอันหนึ่ง Service-Oriented Architecture (SOA) ทำหน้าที่เป็น Enabler (ตัวทำให้เป็นไปได้) สำหรับกลยุทธ์ Business Method Integration SOA เป็นผู้สนับสนุน Business-driven Application Architecture แทนที่จะเป็น Technology-driven Application Architecture โดยที่บริการทางธุรกิจสามารถแมป (Map) ไปยังคอมโพเนนต์เทคโนโลยีในแอปพลิเคชันได้อย่างง่ายดาย