Universal Description, Discovery and Integration : UDDI
Universal Description, Discovery and Integration : UDDI
• SOA interactions between actors
1. Service Provider จะประกาศ (Publish) บริกา่รของตนเองไปยัง Service Registry
2. Service Requester ทำการค้นหาบริการผ่านทาง Service Registry ตามที่ตัวเองต้องการ
3. Service Registry จะทำการส่งผลการค้นหามาให้ Service Requester
4. Service Requester ทำการขอข้อมูลของบริการที่เลือกจาก Service Registry
5. Service Registry ส่งข้อมูลของบริการให้
6. Service Requester ทำการเรียกใช้ (Invoke) บริการดังกล่าวผ่าน Service Provider
7. Service Provider ส่งผลให้ Service Requester
• Service registries
– Service Registry คือ ฐานข้อมูลกลางซึ่งรวบรวมบริการต่างๆที่ service provider ประกาศไว้
– Service Registry ช่วยในการค้นหา webservice โดยจะให้ Service Provider มาลงทะเบียนเพื่ออธิบาย service ที่ตัวเองมี
– Publication การประกาศของ service provider ต้องมีการอธิบายว่า service ที่จะประกาศในส่วนของธุรกิจ เช่น ชื่อ, การติดต่อ, มี operation อะไรบ้าง, technical information
– ชนิดของ Registry
1. Document-based registry : registry คอยรับ WSDL document จาก service provider มาเก็บโดยตรง
2. Meta-data-based registry : ไม่เก็บ WSDL โดยตรง แต่จะอ่าน WSDL document แล้วสกัดเอาข้อมูลออกมาสร้างเป็น meta data
• Service discovery
– Service discovery คือกระบวณการในการค้นหา service provider และดึงข้อมูลที่อธิบายมาตามที่ client ต้องการ โดยการดึงข้อมูลอาจพิจาณาจาก ชนิดของบริการ, ราคา, จำนวนของ provider ที่ต้องการ ซึ่งกระบวณการค้นหาไม่ขึ้นกับ Architecture ของ Registry
– หลังจากค้นหาเจอ service ที่ต้องการแล้ว service developer จะรูว่า web service อยู่ที่ไหน จะเรียกได้อย่างได้ (URI) , ความสามารถ และการติดต่อ
– ชนิดของ Service Discovery
1. Static : ต้องใช้คนในการค้นหา service และเลือก provider ที่ตรงตามความต้องการมากที่สุด จากนั้นก้ต้องเอาข้อมูลมา hard code เข้าไปในตัว program client
2. Dynamic : เขียนโปรแกรมให้ไปค้นหา service provider ที่ต้องการ โดยมีการพิจาณาตาม Ouality of Service, ความปลอดภัย, ราคา, ประสิทธิภาพ ซึ่งเป็นตัวกำหนดว่าต้องการ service แบบไหน เมื่อค้นหาเจอแล้ว สามารถ connect ได้โดยตรง
• Universal Description, Discovery and Integration
What is UDDI ?
– UDDI คือผู้กำหนดรูปแบบมาตรฐานสำหรับการลงทะเบียน service โดยจะเก็บข้อมูลของบริการที่ผู้ใช้บริการได้ลงทะเบียนไว้ เพื่อให้ผู้ร้องขอบริการเข้ามาค้นหาบริการหรือรายละเอียดที่เกี่ยวข้องกับบริการที่ต้องการ
– UDDI business registration ประกอบด้วย
1. White page : ข้อมูลทั่วไป
2. Yellow page : กา่รจำแนกข้อมูลตามหมวดหมู่
3. Green page : ความสามารถทางเทคนิคและข้อมูลเกี่ยวกับการบริการ
UDDI usage model
การลงทะเบียน service มี 2 ประเภท คือ
1. Public Registry : เป็นการจัดตั้งข้อกำหนดของ UDDI เพื่อเป็นศูนย์กลางในการค้นหา service
2. Private Registry : เป็นการจัดตั้งข้อกำหนดของ UDDI เพื่อใช้เฉพาะกลุ่มคู่ค้าทางธุรกิจ
UDDI – Data Structure
– BusinessEntity : โครงสร้างระดับบน เป็นตัวแทนของบริษัทที่ต้องการประกาศเผยแพร่ Service ของตน BusinessEntity จะมีข้อมูลเกี่ยวกับตัวบริษัท ตัวผู้ผลิต (รายละเอียด, หมวดหมู่, และหมายเลขอุตสาหกรรม) และข้อมูลเกี่ยวกับ BusinessService ที่ตนให้บริการ
– BusinessService : โครงสร้างซึ่งเป็นส่วนหนึ่งของ BusinessEntity หนึ่ง BusinessEntity อาจจะมีหลาย BusinessService ก็ได้ BusinessService จะเก็บรายละเอียดเกี่ยวกับตัว Service และหมวดหมู่ของตัว Service รวมถึง BindingTemplate
– BindingTemplate : เป็นข้อมูลที่อยู่ภาย BusinessServide มีหน้าที่เชื่อมโยงไปยัง tModel ซึ่งช่วยให้ทำการค้นเร็วขึ้น, ทำหน้าที่จัดเก็บข้อมูลทางเทคนิคที่ application ต้องการ
– tModel : ถือเป็นหัวใจสำคัญของการค้นหาบน UDDI เพราะ tModel จะมีหน้าที่เป็น index ของ UDDI โดยจะมีนิยามประเภทของ Service และอ้างอิงไปยังเอกสาร WSDL (Web Service Definition Language) อีกด้วย , มี attribute tModelKey ที่ช่วยระบุตัวตนให้ tModel ไม่ซ้ำกันทำให้สามารถติดต่อกับ web service ได้อย่างถูกต้อง
– PublisherAssertion : เป็น Reference Key ตัวหนึ่งที่มีหน้าที่บอกความสัมพันธ์ระหว่างสอง BusinessEntity เพราะอาจจะเป็น บริษัทแม่-ลูกกัน (Parent-Child) หรือ พันธมิตรกัน (Peer2Peer) หรืออื่นๆ
Summary UDDI data model
UDDI and WSDL
•อ่านเพิ่มเติม
UDDI
Thanks for PIC : WEB SERVICES : PRINCiPLE and TECHNOLOGY : Michael P. Papazoglou
Leave a comment