SOAP ย่อมาจาก Simple Object Access Protocol คือโปรโตคอลมาตรฐานที่ใช้ใน Web Services เป็นโพรโทคอล ( Protocol )ในการติดต่อแลกเปลี่ยนข้อมูลระหว่างกันของ web services เป็นโพรโทคอลการสื่อสาร ในระดับ Application Layer หรือในระดับ แอปพลิเคชัน โดยอาศัยผ่านอินเทอร์เน็ตโพรโทคอล ซึ่งอาศัยรูปแบบของภาษา XML ทำให้ Web services สามารถสื่อสารกันได้แม้ว่า จะอยู่บนเครื่องคอมพิวเตอร์คนละเพลตฟอร์ม หรือพัฒนาด้วยภาษาโปรแกรมที่ต่างกันก็ตาม และนิยมใช้ HTTP เป็นโปรโตคอลร่วมสำหรับส่งผ่านข้อมูลบนระบบอินเตอร์เน็ต SOAP ทำงานร่วมกับโพรโตคอลได้หลายชนิด เช่น HTTP, SMTP, FTP, IIOP เป็นต้น
ลักษณะข้อความที่รับ - ส่ง ผ่านโพรโตคอล SOAP ซึ่งเป็นไปตามรูปแบบของ XML
จากภาพ อธิบายได้ดังนี้
- ผู้ขอใช้บริการ (Service Requester ) สร้าง SOAP Message เพื่อเรียกใช้บริการของ เว็บเซอร์วิส แล้วส่งผ่านโพรโตคอลเครือข่ายไปยังผู้ให้บริการ ในที่นี้ SOAP message ที่รับ-ส่งไปมานั้น อยู่ในรูปแบบ XML และต้องมีการแปลกลับมาอยู่ในรูปแบบที่โปรแกรมหรือเว็บเซิร์ฟเวอร์เข้าใจ โดยมีโปรแกรมที่ทำหน้าที่แปลความหมายของเอกสาร XML คือ XML Parser
- ผู้ให้บริการ ( Service Provider ) ได้รับ SOAP Message จากผู้ขอใช้บริการ จากนั้น จึงแปลข้อความนั้นกลับมาอยู่ในรูปแบบที่เว็บเซิร์ฟเวอร์เข้าใจ แล้วตรวจสอบว่า ผู้ใช้บริการต้องการเรียกใช้ เว็บเซอร์วิส ชื่ออะไร เมธอดอะไร และส่งพารามิเตอร์อะไร มาด้วย จากนั้นจึงส่งไปให้แก่คอมโพเนนต์ที่ให้บริการ เว็บเซอร์วิส นั้นๆดำเนินการประมวลผล
- หลังจากคอมโพเนนต์ที่ให้บริการ เว็บเซอร์วิส ส่งผลลัพธ์กลับมาแล้วผู้ให้บริการก็จะสร้าง SOAP Message ที่มีผลลัพธ์นั้นออกมาด้วย แล้วจึงส่งผ่านทางโพรโตคอลเครือข่ายกลับคืนไปยังผู้ขอใช้บริการ
- ผู้ขอใช้บริการได้รับ SOAP Message ที่อยู่ในรูปแบบ XML จึงแปลข้อความนั้นกลับมาในรูปแบบที่โปรแกรมของผู้ขอใช้บริการเข้าใจแล้วนำผลลัพธ์ไปใช้งาน เช่น แสดงผล หรือไปทำอย่างอื่น แล้วแต่ว่ามีการเขียนโปรแกรมรองรับไว้ให้ทำอย่างไรและจะมี SOAP Listener ทำหน้าที่คอยรับฟังว่ามีการเรียกใช้ เว็บเซอร์วิส จากผู้ใช้ การบริการของ เว็บเซอร์วิส แต่ละบริการจะมีไฟล์ SOAP Listener จำนวน 1 ไฟล์ เมื่อใดที่มีการเรียกใช้ เว็บเซอร์วิส ไฟล์โปรแกรมที่เป็น SOAP Listener ก็จะไปปลุกให้ เว็บเซอร์วิสทำงาน
- โพรโตคอล SOAP สามารถให้เราเรียกใช้คอมโพเนนต์ หรือ เว็บเซอร์วิส ข้ามเครื่อง ข้าม แพลตฟอร์มหรือข้ามภาษา ได้ โดยอาศัยโพรโตคอลที่มีอยู่เดิมในอินเทอร์เน็ต อย่าง HTTP
- โครงสร้างข้อมูลของ SOAP เป็นรูปแบบข้อความที่สื่อสารกันด้วยภาษา XML ซึ่งมีลักษณะเป็นข้อความธรรมดาๆปิดล้อมด้วยแท็ค ทำให้เข้าใจได้ในทุกแพลตฟอร์ม
- โพรโตคอล SOAP สามารถทำงานผ่านระบบไฟล์วอลล์ ได้ง่ายเนื่องจาก SOAP ทำงานอยู่กับ โพรโตคอล HTTP ซึ่งโดยธรรมชาติของไฟล์วอลล์ จะเปิดให้การสื่อสารด้วย HTTP ผ่านได้อย่างสะดวก
- SOAP สนับสนุนจากหลายค่าย เช่น IBM, MS , SUN
- เนื่องจากลักษณะของ SOAP message เป็นเอกสาร XML ทำให้เสียเวลาในการแปลกลับมาเป็นรูปแบบที่โปรแกรมเข้าใจ
- ในกรณีที่ SOAP ทำงานอยู่กับโพรโตคอล HTTP ซึ่งมีสมรรถนะในการรับ-ส่งข้อมูลต่ำกว่าโพรโตคอล DCOM, RMI, หรือ IIOP จึงทำให้โพรโตคอล SOAP มีอัตราการรับ-ส่งข้อมูลต่ำ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น