SOA เทียบกับบริการบนเว็บ
บริการบนเว็บใช้ในการสร้างแอปพลิเคชันที่สามารถส่ง/รับข้อความโดยใช้ SOAP ผ่าน HTTP บริการเว็บเป็นแพ็คเกจการทำงานที่เผยแพร่ทางเว็บ SOA เป็นชุดของแนวคิดทางสถาปัตยกรรมที่ใช้สำหรับการพัฒนาและบูรณาการบริการ สามารถใช้บริการเว็บเพื่อใช้งาน SOA แต่มันเป็นเพียงวิธีเดียวในการทำความเข้าใจแอปพลิเคชันที่ใช้ SOA
บริการเว็บคืออะไร
บริการเว็บเป็นวิธีการสื่อสารผ่านเครือข่าย จากข้อมูลของ W3C บริการเว็บเป็นระบบเฉพาะสำหรับรองรับการทำธุรกรรมระหว่างเครื่องกับเครื่องผ่านเครือข่ายเป็น Web API ที่อธิบายใน WSDL (Web Service Description Language) และบริการเว็บมักจะประกอบด้วยตัวเองและอธิบายตนเอง สามารถค้นพบบริการเว็บได้โดยใช้โปรโตคอล UDDI (Universal Description, Discovery and Integration) โดยการแลกเปลี่ยนข้อความ SOAP (Simple Object Access Protocol) ที่ปกติแล้วจะผ่าน HTTP (ด้วย XML) ระบบอื่นๆ สามารถโต้ตอบกับบริการบนเว็บได้
บริการบนเว็บมีการใช้งานหลายวิธี เช่น RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) และ REST (Representational State Transfer) มีวิธีการออกแบบอัตโนมัติสองวิธีในการพัฒนาบริการเว็บ แนวทางจากล่างขึ้นบนเกี่ยวข้องกับการสร้างคลาสก่อนแล้วจึงใช้เครื่องมือสร้าง WSDL เพื่อเขียนคลาสเหล่านี้เป็นบริการเว็บ วิธีการจากบนลงล่างเกี่ยวข้องกับการกำหนดข้อกำหนด WSDL จากนั้นใช้เครื่องมือสร้างโค้ดเพื่อสร้างคลาสที่เกี่ยวข้อง บริการเว็บมีการใช้งานหลักสองแบบ สามารถใช้เป็นส่วนประกอบแอปพลิเคชันที่ใช้ซ้ำได้และ / หรือเพื่อเชื่อมต่อเว็บแอปพลิเคชันที่ทำงานบนแพลตฟอร์มต่างๆ
SOA คืออะไร
SOA (สถาปัตยกรรมเชิงบริการ) คือชุดของแนวคิดทางสถาปัตยกรรมที่ใช้สำหรับการพัฒนาและบูรณาการบริการ SOA เกี่ยวข้องกับการคำนวณแบบกระจาย ซึ่งผู้บริโภคใช้บริการที่ทำงานร่วมกันได้ ผู้บริโภคหลายรายสามารถใช้บริการเดียวและในทางกลับกัน ดังนั้น SOA มักใช้เพื่อรวมแอพพลิเคชั่นหลายตัวที่ใช้แพลตฟอร์มต่างกัน เพื่อให้ SOA ทำงานได้อย่างถูกต้อง บริการต่างๆ ควรควบคู่ไปกับระบบปฏิบัติการและเทคโนโลยีของแอปพลิเคชันพื้นฐานอย่างหลวมๆ นักพัฒนา SOA สร้างบริการโดยใช้หน่วยการทำงาน และทำให้ใช้งานได้ทางอินเทอร์เน็ต บริการเว็บสามารถใช้เพื่อนำสถาปัตยกรรม SOA ไปใช้ ในกรณีดังกล่าว บริการเว็บจะกลายเป็นหน่วยการทำงานของ SOA ที่เข้าถึงได้ทางอินเทอร์เน็ต ใครๆ ก็ใช้บริการเว็บได้โดยไม่ต้องกังวลเกี่ยวกับแพลตฟอร์มหรือภาษาโปรแกรมที่ใช้ในการพัฒนา SOA สร้างขึ้นโดยตรงบนหลักการของการวางแนวบริการ ซึ่งพูดถึงบริการด้วยอินเทอร์เฟซที่เรียบง่ายซึ่งผู้ใช้สามารถเข้าถึงได้โดยอิสระโดยไม่ต้องกังวลเกี่ยวกับการใช้งานแพลตฟอร์มจริงของบริการ
SOA และบริการเว็บต่างกันอย่างไร
บริการเว็บและ SOA มีความแตกต่างที่สำคัญบางประการ บริการเว็บกำหนดเทคโนโลยีเว็บที่สามารถใช้เพื่อสร้างแอปพลิเคชันที่สามารถส่ง / รับข้อความโดยใช้ SOPA ผ่าน HTTP อย่างไรก็ตาม SOA เป็นแบบจำลองทางสถาปัตยกรรมสำหรับการนำแอปพลิเคชันบริการที่เชื่อมต่อกันอย่างหลวม ๆ ไปใช้ บริการเว็บสามารถใช้เพื่อใช้งานแอปพลิเคชัน SOA แม้ว่าแนวทางบริการเว็บสำหรับ SOA จะได้รับความนิยมอย่างมาก แต่ก็เป็นเพียงวิธีเดียวในการนำ SOA ไปใช้ SOA สามารถนำไปใช้ได้โดยใช้เทคโนโลยีบริการอื่นๆ (เช่น CORBA และ REST)