พื้นฐานของ Web Service ก็คือ XML กับ HTTP ซึ่งจะพบว่า HTTP ก็เป็นที่รู้จักกันดี และไปได้ทั่วทุกแห่งที่มี interner ส่วน XML คือภาษาสากลที่คุณสามารถปรับแต่งได้ตามใจชอบ เพื่อให้เกิดกิจกรรมระว่าง client และบริการ หรือระหว่างส่วนประกอบต่างๆ เบื้องหลัง Web server ก็คือ ข้อความ XML จะถูกแปลงให้การขอบริการจาก Middle ware และผลที่ได้ก็จะแปลงกลับมาในรูป XML
ยกตัวอย่างให้เห็นง่ายๆ คุณต้องการให้เครื่อง PC อ่านค่าจาก serial port แล้วส่งไปประมวลผลบนเครื่อง UNIX แล้วส่งผลกลับมาแสดงบนจอ PC ถ้าเป็นเมื่อก่อน คุณก็คงต้องแปลงข้อมูลที่ได้ให้อยู่ในรูปของ ASCII แล้วส่งไปยัง UNIX พร้อมคำสั่งว่าให้ทำอะไร ในฝั่ง UNIX คุณก็ต้องมาแยกว่าอันไหนคือคำสั่ง อันไหนคือข้อมูล เมื่อประมวลผลแล้ว จะส่งกลับมาในรูปแบบไหน แล้วถ้าหากจะส่งไปหาเครื่องที่เป็น MAC ท่านจะต้องเขียนโปรแกรมเพิ่มในส่วนไหนบ้าง จะพบว่าเราต้องพัฒนากันเป็นคู่ๆ ไป และต้องนิยามในแต่ละฝั่งให้ชัดเจน แต่หากเป็น Web Service คุณจะพบว่า เราแปลงข้อมูลให้อยู่ในรูป XML แต่ละคุณก็ต้องการรู้แค่ มาตรฐาน XML ก็พอ แล้วต่างคนต่างก็เขียน Service ของตัวเอง ไม่ต้องกังวลเรื่องของการเชื่อมโยงอีกต่อไป และ Protocol ที่ส่งก็คือ HTTP นั่นเอง ถ้าท่านเชื่อมโยงกับ HTTP (หรือเว็บ) ได้ ท่านก็ใช้บริการทุกอย่างได
แต่เดี๋ยวก่อนการเข้าถึงและการสั่งงานนั้นยังเป็นเพียงโครงสร้างพื้นฐาน แต่ในความเป็นจริงยังมีอะไรมากกว่านั้น เช่น การค้นหา การทำธุรกรรม ความปลอดภัย การพิสูจน์ตัวตน และอื่นๆ อันเป็นบริการที่ทำให้เป็นบริการพื้นฐานจริงๆ
ระบบเพิ่มเติมที่ต้องมีและต้องรักษาความสะดวกและใช้งานง่ายไว้ด้วย พื้นฐานของ Web Service เต็มรูปแบบคือ XML + HTTP + SOAP + WSDL + UDDI หรือในระดับสูงกว่านั้น แต่ไม่ได้ถือเป็นสิ่งจำเป็นเสมอไปคือต้องเพิ่มเทคโนโลยี XAML, XLANG, XKMS, XFS เป็นต้น
ต่อไปนี้คือรายละเอียดคร่าวๆ ของแต่ละส่วน แต่ควรตระหนักว่าแต่ละส่วนอาจจะยังเป็นเทคโนโลยี ที่กำลังอยู่ระหว่างพัฒนา ดังนั้นในแต่ละปัญหาอาจจะแก้ได้หลายวิธีด้วยกัน
SOAP (Remote Invocation) สั่งงานจากระยะไกล
UDDI บริการ Directory
WSDL ระบุคุณสมบัติของแต่ละบริการ
XLANG/XAML กรณีของการเชื่อมโยงที่ซับซ้อน หลายๆ เว็บ
XKMS (XML Key Management Specification) ระหว่างการพัฒนา (Microsoft + Verisign)
Credit By: http://www.thaixml.com
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 เรื่องดังกล่าวจึงนับเป็นเรื่องธรรมดาของการสื่อสารผ่านระบบอิเล็กทรอนิกส์
Credit By: office.cpu.ac.th/bba1/file/07-webservice.doc
Web Service Description Language : WSDL
• Why is a service description needed?ต้องมีเอกสาร Service Description เพื่อบอกรายละเีอียดและวิธีการเรียกใช้ service เพราะถ้าีมีแต่ XML Schema จะไม่สามารถอธิบายความสำคัญของรายละเีอียดเพิ่มเติมซึ่งรวมไปถึงการเรียกใช้ web service ด้วย
• Web Service Description Language- WSDL (อ่านว่า วิส-เด้าว์) คือ เอกสารที่อยู่ในรูปแบบของ XML มีไว้ใช้อธิบายรายละเอียดของ Web service เพื่อให้ application ที่ต้องการเรียกใช้ web service ทราบรายละเอียดของบริการและวิธีการเรียกใช้ โดย WSDL จะบรรจุรายละเอียดที่ต้องใช้ในการสร้าง Request message เพื่อร้องขอบริการเช่น ชื่อบริการ, พารามิเตอร์ หรือโปรโตคอลที่ใช้ในการติดต่อสื่อสาร
- สรุปได้ว่า WSDL เป็นการตัวเชื่อมระหว่าง Service Provider และ Service Requester
• Structure of WSDL documentsสามารถแบ่งโครงสร้างของ WSDL ออกได้เป็น1. Service interface definition : ใช้กำหนดคุณลักษณะในการเชื่อมต่อของ web service2. Service implement part : ใช้ระบุภาษา, เทคโนโลยี, โปรโตคอล ที่ใช้เป็นส่วนเชื่อมต่อทางกายภาพ
• WSDL document content• Abstract (interface) definitions
–
• Concrete (implementation) definitions
–
• Also:
– ใช้อ้างอิงไปยังไฟล์ XML อื่น
• WSDL Implementation- Service Implementation Part ของ WSDL ประกอบด้วย element
• WSDL message exchange patterns : รูปแบบในการรับส่งข้อมูลของ WSDL- One-way operation : ทำงานโดย client ส่ง request ไปแล้วจะไม่มีการรอการตอบกลับ (มีเฉพาะส่วนของ element input)- Notification operation : ทำงานตรงข้ามกับ One-way คือ ฝั่ง server จะส่งข้อมูลให้กับ Client ด้วย element output โดยไม่รอการตอบกลับ (มีเฉพาะส่วนของ element output)- Request/Response operation : สามารถทำงานโดยที่ Client ส่ง Request และรอการตอบรับ response กลับมา (ใช้ element input สำหรับการร้องขอ และ ใช้ output สำหรับการตอบกลับ)- Solicit/Response operation : ทำงานตรงข้ามกับRequest/Response operation คือมีการส่งคำเชิญ (Solicit) ให้กับ Client แล้วรอการตอบกลับจาก Client (ใช้ element output สำหรับการส่งคำเชิญ และ ใช้ input สำหรับการตอบกลับจาก client)
• สรุปโครงสร้างของ WSDL
กำหนดชนิดของ web service
กำหนด Message
กำหนดการทำงาน (Operation)
กำหนดโปรโตคอลและรูปแบบของข้อมูล
กำหนด Port ของ service
Credit By: http://www.siamwebcity.com/
บทสรุปของWeb&WebService
Web Service คือ program ชนิดหนึ่งที่ทำงานในลักษณะการให้บริการ โดยใช้การติดต่อสื่อสารระหว่าง application –to- application ที่ใช้อยู่ในปัจจุบัน โดยผ่านเครือข่ายอินเทอร์เน็ต ในลักษณะ Client-Server โดยใช้โพรโตคอล SOAP ภาษาที่ใช้เป็นสื่อในการแลกเปลี่ยนคือ XML ทำให้เราสามารถเรียกใช้ component ใด ๆ ก็ได้บน protocol HTTP ซึ่งเป็น protocol สำหรับอินเทอร์เน็ต (World Wide Web)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น