Web Services คืออะไร มาดูกันเลย...
Application หรือ program
ที่ทำงานอย่างใดอย่างหนึ่ง ในลักษณะให้บริการ โดยจะถูกเรียกใช้งานจาก
application อื่นๆ ในรูปแบบ RPC (Remote Procedure Call)
ซึ่งการให้บริการจะมีเอกสารที่อธิบายคุณสมบัติของบริการกำกับไว้
โดยภาษาที่ถูกใช้เป็นสื่อในการแลกเปลี่ยนคือ XML ทำให้เราสามารถเรียกใช้
component ใด ๆ ก็ได้ ใน platform ใด ๆ ก็ได้ บน protocol HTTP ซึ่งเป็น
protocol สำหรับ World Wide Web
อันเป็นช่องทางที่ได้รับการยอมรับทั่วโลกในการติดต่อสื่อสารกันระหว่าง
application กับapplication ในปัจจุบัน
Web Service
ช่วยให้การเข้าถึงข้อมูลสารสนเทศจากแอพพลิเคชันที่ต่างกันเป็นไปโดยง่าย
โดยแอพพลิเคชันนั้นๆ สามารถเขียนด้วย Java และรันอยู่บน Sun Solaris
Application Server หรืออาจจะเขียนด้วย C++ และรันอยู่บน Windows NT
หรืออาจะเขียนด้วย Perl และรันอยู่บนเครื่อง Linux ซึ่งมาตรฐานของ Web
Service ทำให้อินเทอร์เฟซของแอพพลิเคชันเหล่านี้ ถูกอธิบายโดย WSDL
และทำให้อยู่ในมาตรฐานของ UDDI หลังจากนั้น
จึงสามารถติดต่อสื่อสารถึงกันโดย XML ผ่าน SOAP อินเตอร์เฟซ
Web Service
สามารถถูกเรียกใช้ภายในองค์กรเองหรือจากภายนอกองค์กร โดยผ่านไฟร์วอล์
ดังนั้นจึงมีองค์กรใหญ่ๆ มากมาย กำลังพัฒนาระบบที่มีอยู่ของตน ให้เข้ากับ
Web Service ซึ่งนับเป็นการลงทุนที่คุ้มค่า เนื่องจาก Web Service
สามารถเพิ่มศักยภาพในการทำงานขององค์กร
อีกทั้งลดค่าใช้จ่ายในการจัดการทรัพยากรขององค์กรได้อีกทางหนึ่ง
นอกจากนั้น Web Service ยังสามารถใช้ร่วมกับ
Web Application
โดยส่งผ่านข้อมูลทางอินเตอร์เน็ตได้อีกด้วยซึ่งนับเป็นวิธีที่มีประสิทธิภาพ
ในการติดต่อสื่อสารกับลูกค้าหรือหุ้นส่วน
ถึงแม้จะต้องคำนึงถึงระบบรักษาความปลอดภัย
และการจัดการรายการของข้อมูลอยู่ก็ตาม แต่ Web Service
ได้ใช้มาตรฐานทั่วไปของ internet
เรื่องดังกล่าวจึงนับเป็นเรื่องธรรมดาของการสื่อสารผ่านระบบอิเล็กทรอนิกส์
Requestor คือ
ใครก็ตามที่ต้องการเรียกใช้บริการจาก Provider
ซึ่งสามารถค้นหาบริการที่ต้องการได้จาก UDDI registry หรือ Service
Registry หรือติดต่อจาก Provider โดยตรง
Registry คือ
ทำหน้าที่เป็นตัวกลางให้ Provider มาลงทะเบียนไว้ โดยใช้ WSDL ไฟล์
บอกรายละเอียดของบริษัทและบริการที่มีให้ ซึ่งอาจจะใช้หรือไม่ใช้ก็ได้
Provider คือ
เป็นผู้ให้บริการ มีหน้าที่ในการเปิดบริการเพื่อรองรับการขอใช้บริการจาก Requestor ที่เรียกเข้ามาขอใช้
หน้าที่และการทำงานของแต่ละ entity
จากโครงสร้างของเว็บเซอร์วิส จะพบว่าเว็บเซอร์วิสประกอบด้วย event ต่าง ๆ ดังนี้
* Create Service - โดยบริการ (service)
จะถูกสร้างขึ้นจากเครื่องมือและภาษาที่เหมาะสมสำหรับเว็บเซอร์วิส เช่น C++
VB Java Perl PHP Python เป็นต้น
* Publish - หลังจากบริการถูกสร้างขึ้น จะถูก publish ไว้ใน UDDI
registry โดย Service Container ซึ่งภายใน registry
จะประกอบไปด้วยข้อมูลเกี่ยวกับ บริการ และผู้สร้างบริการนั้น ๆ
โดยจะจำแนกตามประเภทของธุรกิจ ซึ่งช่วยให้ผู้ขอบริการ (Service Requestor)
สามารถค้นหาบริการได้อย่างง่ายดาย ตัวอย่างเช่น โบรกเกอร์หุ้นสามารถ
publish บริการการค้าหุ้น ไว้ในประเภทธุรกิจการเงิน โดยใช้ IBM UDDI
registry และจะต้อง publish บริการในรูปของไฟล์ WSDL (Web Service
Description Language)
ซึ่งเก็บข้อมูลทั้งหมดเกี่ยวกับบริการและโบรกเกอร์ไว้
* Search - ผู้ขอบริการ (Service Requestor) สามารถค้นหาบริการใน registry ผ่านทางอินเทอร์เฟสของผู้ให้บริการ (Service Provider)
* Reference - หลังจากผู้ขอบริการค้นหาบริการที่ต้องการ
จะได้ผลการค้นหาเป็นรายการของบริการ ซึ่งประกอบด้วย reference และ
specification ของบริการต่าง ๆ ซึ่งผู้ขอบริการสามารถเลือกได้ว่า
บริการใดที่ตรงกับความต้องการของตนเองมากที่สุด
* Bind - ผู้ขอบริการสามารถใช้ reference ที่เลือกไว้ เพื่อโยงไปยังบริการที่ต้องการ
* Invoke - บริการจะถูกเรียกใช้ผ่านทาง reference
โดยใช้เทคโนโลยีมาตรฐานต่าง ๆ เช่น การเรียกบริการโดย SOAP ในรูปของเอกสาร
XML ผ่านทาง HTTP protocol
ความหมายของ Web Services
Web Services (WS)
คือแอพลิเคชั่นหรือโปรแกรมที่ทำงานอย่างใดอย่างหนึ่งในลักษณะให้บริการ
โดยจะถูกเรียกใช้งานแอพลิเคชั่นจากโปรแกรมอื่น ๆ (php, asp, java, python)
ผ่านทางหน้าเว็บ การให้บริการของ WS
จะมีเอกสารที่อธิบายคุณสมบัติของการบริการกำกับไว้
และมีการนำเสนอให้สาธารณะชนรับทราบ ผู้ใช้จึงสามารถค้นหา WS
ได้โดยไม่จำเป็นต้องรู้ที่อยู่จริงของแอพลิเคชั่นหรือโปรแกรมนั้นๆ
Web Services Technology
Web Service = SOAP+WSDL+UDDI
SOAP (Simple Object Access Protocol)
เป็นโปรโตคอลที่เรียกใช้ในการเรียกใช้งาน Component ข้ามเครื่อง
ข้ามแพลตฟอร์ม ข้ามภาษา (Component ที่สร้างด้วยภาษาใดๆ (asp.net, c#, php,
perl, java, python, delphi)สามารถคุยกันรู้เรื่อง)
โปรโตคอลนี้ทำงานร่วมกับโปรโตคอล HTTP
และรูปแบบข้อความที่สื่อสารกันด้วยภาษา XML
WSDL (Web Service Description Language)
เป็นภาษาที่ใช้อธิบายคุณลักษณะของ Web Services และวิธีการติดต่อกับ Web
Services เป็นภาษาที่อยู่ในความดูแลของ W3C (World Wide Web Consortium)
สามารถอ่านเนื้อหาเพิ่มเติมได้ที่ http://www.w3.org/TR/wsdl
UDDI (Universal Description, Discovery and Integration)
เป็นที่เก็บรวบรวม Web Services ต่างๆ ในอินเทอร์เน็ต
ไว้ในแหล่งเดียวกันเพื่อให้ผู้ใช้บริการสามารถค้นหาได้ง่ายๆ
หากเปรียบเทียบง่ายๆ
ให้มองเสมือนสมุดหน้าเหลืองที่เราใช้ในการเปิดดูเบอร์โทรศัพท์
- ผู้เริ่มก่อตั้ง UDDI ในช่วงแรกคือ IBM และ Microsoft และ Ariba
ซึ่งเป็นบริษัทที่ทำธุรกิจ B2B
ปัจจุบันมีบริษัทที่มีส่วนร่วมในการกำหนดมาตฐานของ UDDI มากกว่า 70 บริษัท
- UDDI ถูกสร้างขึ้นมาเพื่อเป็นมาตรฐานในการค้นหาบริการของ WS สำหรับคู่ค้าทางธุรกิจ (ฺBusiness Partner)
- UDDI Business Registry เป็นฐานข้อมูล WS ของบริษัทคู่ค้าทางธุรกิจ
- ในปัจจุบันบางบริษัทก็ตั้งตัวเองเป็นตัวแทนผู้ให้บริการ (Service brokers)
- สามารถศึกษาข้อมูลเกี่ยวกับ UDDI ได้ที่ http://uddi.org
หรือดาวน์โหลดสไลด์ UDDI อ่านเพิ่มเติมได้ที่
http://www.uddi.org/pubs/UDDI_Overview_Presentation.ppt
ผู้ขอใช้บริการจะทำอย่างไรหลังจากได้รับผลลัพธ์จาก SOAP Message?
ตอบลบเข้าถึง Telkom University Jakarta