دانشکده مهندسي کامپيوتر دانشگاه صنعتي شريف دانشکده مهندسي کامپيوتر مسعود آخوندي 81103003 پائيز 84
فهرست مطالب معرفي وب سرويس استفاده کنندگان و پشتيبانان مزايا و محدوديتها سير تکاملي مطالعه موردي توصيه هاي بزرگان منابع
مقدمه مدل تجاري بعدي اينترنت: نظر سنجي بيش از 66 درصد ويژگيهاي يک وب سرويس از ديدPaul Flessner ، نايب رييس مايکروسافت پنهان سازي اطلاعات وب سرويس ها بر پايه XML بنا نهاده شده اند وب سرويس ها خود ، خود را توصيف مي کنند
سير تکاملي محاسبات توزيع شده پست الکترونيکي EDI ميکروکامپيوتر، سيستم عامل، پست الکترونيکي IMAP RPCs CORBA, DCOM وب XML eSpeak, XML-RPC, SOAP 0.9, etc. SOAP & WSDL وب سرويسها ebXML 1970 1980 1990 1997 1999 2000 2001 2002 2003 2004
وب سرويس چيست؟(W3C) يک کاربرد نرم افزاري است که توسط يک URL مشخص مي شود، که مي تواند توسط آرتيفکتهاي XML تعريف، توصيف و يافت شود. يک وب سرويس تعاملات مستقيم را با ديگر نمايندگان نرم افزاري با استفاده از پيامهاي XML و از طريق پروتکل هاي اينترنتي فراهم مي کند.
مثال: خريد بليط قطار فراخواني و استفاده سرورهاي شرکت رجا درخواست فراخواني و استفاده SOAP سرورهاي شرکت رجا وب سرويس بانک سامان کاربر پاسخ
مفهوم وب سرويس توصيف وجستجو انتشار و کشف استفاده ميانجيهاي سرويس WSDL انتشار و کشف UDDI درخواست کنندگان سرويس فراهم کنندگان سرويس استفاده SOAP over HTTP
XML eXtensible Markup Language در سال 97 توسط W3C استاندارد شد به شرکت خاصي تعلق ندارد جبران ضعف HTML جدا بودن محتوا از ظاهر هر کاربرد خودش تصميم مي گيرد که چگونه اطلاعات را نمايش دهد. XML parser براي خواندن اطلاعات هر تکنولوژي مي تواند به استفاده از آن بپردازد
SOAP Simple Object Access Protocol توليد توسط شرکت UserLand و مايکروسافت در سال 1998 اولين نسخه در سال 1999 در دسامبر 2001 نسخه 2/1 در W3C استاندارد شد هدف ارسال داده بين سيستم هاي روي شبکه
SOAP - ارتباط کاربردها و وب سرويسها 2- اجراي يک تابع با توجه به محتواي پيام 1- پيام SOAP وب سرويس کاربرد 3- ارسال نتايج با SOAP
پيام SOAP استفاده از يک سري الگوهاي XML دريافت توسط سرورهاي SOAP هدف: تفسير درست توسط گيرنده دريافت توسط سرورهاي SOAP اجزا پيام لفافه(Envelope) به منظور بسته بندي کردن کل پيام توصيف محتواي پيام و گيرنده آن سرآيند(Header) اختياري است امنيت و مسيريابي بدنه(Body) حاوي پيام تعيين شکل پيام هاي ارسالي با استفاده از الگو
مزيتهاي SOAP قابليت گسترش سادگي استقلال از زبان برنامه نويسي و سيستم عامل و سخت افزار به علت استفاده از XML به علت استفاده از HTTP
SOAP : گوگل Envelope بدنه اطلاعات مربوط به نوع ذخيره فايلهاي xml تعريف نام متغييرها متغييرها و نوع آنها، مقداردهي اوليه به آنها
WSDL Web Services Description Language فرمت XML توانايي توصيف وب سرويسها توسط خودشان اطلاعات مورد نياز وب سرويس اطلاعات خروجي وب سرويس طراحي براي درک آن توسط ماشين در ابتدا هر يک از توسعه دهندگان، استاندارد خودشان را داشتند پس از يکسان شدن استاندارد IBM و مايکروسافت، WSDL به وجود آمد ارائه WSDL توسط اين دو کمپاني به W3C و استاندارد شدن آن ادامه کار بر روي آن
WSDL هر وب سرويس روي اينترنت يک WSDLدارد. اين فايل توصيف کننده: مشخصات مکان نحوه استفاده با استفاده از پروتکلهاي مختلف در تئوري هر برنامه کاربردي با استفاده از WSDL به جستجوي وب سرويس دلخواه گرديده و از آن استفاده مي کند.
قسمتهاي WSDL
قسمتهاي WSDL Message Operation PortType قسمتهاي(parts) مختلف پيام را تعريف مي کند. مانند سرآيند(header) و بدنه <message name=’quoteRequest’> <part name=’body’ element=’quote-schema-ns:stockName’/> </message> Operation پيامهاي مختلف در يک جريان پيام رساني را ليست مي کند. به عنوان مثال يک عمليات request-response شامل دو پيام مي باشد. PortType مجموعه عملياتي را که هر يک از طرفين درگير در ارتباط انتظار دارند، بدون توجه به جزئيات کدکردن و انتقال پيام نشان مي دهد. <portType name=’quotePortType’> <operation name=’getQuote’> <input message=’quote-wsdl-ns:quoteRequest’/> <output message=’quote-wsdl-ns:quoteResponse’/> </operation> </portType>
قسمتهاي WSDL Binding جزئيات کدکردن و انتقال پيام را براي يک portTypeخاص نشان مي دهد. <binding name=’quoteBinding’ type=’quote-wsdl-ns:quotePortType’> <operation name=’getQuote’> <soap:operation soapAction="http://example.com/stockQuoteAction"/> <input> <soap:body part=’body’ use=’literal’/> </input> <output> </output> </operation> </binding>
قسمتهاي WSDL Port Service آدرس شبکه ماشيني که سرويس را ارائه مي دهد در برمي گيرد. Service يک مجموعه از endpointهاي مرتبط به هم را نشان مي دهد. <service name=’stockService’> <port name=’stockPort’ binding=’quote-wsdl-ns:quoteBinding’> <soap:address location=’http://example.com/quotes/'/> </port> </service>
WSDL: گوگل Message <message name="doGoogleSearch"> <part name="key" type="xsd:string"/> <part name="q" type="xsd:string"/> <part name="start" type="xsd:int"/> <part name="maxResults" type="xsd:int"/> <part name="filter" type="xsd:boolean"/> <part name="restrict" type="xsd:string"/> <part name="safeSearch" type="xsd:boolean"/> <part name="lr" type="xsd:string"/> <part name="ie" type="xsd:string"/> <part name="oe" type="xsd:string"/> </message>
WSDL: گوگل Operation و PortType <portType name="GoogleSearchPort"> <operation name="doGetCachedPage"> <input message="typens:doGetCachedPage"/> <output message="typens:doGetCachedPageResponse"/> </operation> <operation name="doSpellingSuggestion"> <input message="typens:doSpellingSuggestion"/> <output message="typens:doSpellingSuggestionResponse"/> <operation name="doGoogleSearch"> <input message="typens:doGoogleSearch"/> <output message="typens:doGoogleSearchResponse"/> </portType>
WSDL: گوگل Binding <binding name="GoogleSearchBinding" type="typens:GoogleSearchPort"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="doGoogleSearch"> <soap:operation soapAction="urn:GoogleSearchAction"/> <input> <soap:body use="encoded" namespace="urn:GoogleSearch" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/> </input> <output> </output> </operation> </binding>
WSDL: گوگل Port و Service <service name="GoogleSearchService"> <port name="GoogleSearchPort" binding="typens:GoogleSearchBinding"> <soap:address location="http://api.google.com/search/beta2"/> </port> </service>
UDDI مبتني بر XML توضيحاتي شامل: Universal Description , Discovery and Integration توانايي ارائه وب سرويسها بر روي اينترنت توسط شرکتها و افراد استاندارد: توسط مايکروسافت، IBM و 50 شرکت ديگر مبتني بر XML توضيحاتي شامل: چگونگي کار با وب سرويس امکانات آن
UDDI UDDI مي تواند: بزرگترين و مهمترين پايگاه در اينترنت به طور خصوصي نگهداري شود در مکانهاي عمومي در اينترنت قرار داده شود بزرگترين و مهمترين پايگاه در اينترنت UDDI Business Registry که اطلاعات توسط چهار شرکت نگهداري مي شود: مايکروسافت IBM SAP HP اين اطلاعات شامل: اطلاعات تماس شرکتها و توضيحات متني آنها اطلاعات طبقه بندي شده شرکتها و اطلاعات درباره توانايي وب سرويسها آنها حاوي اطلاعات تکنيکي درباره سرويس هاي آنها و نحوه پردازش اطلاعات
وب سرويس در يک نگاه فهرست مستندات UDDI WSDL وب سرويس کاربرد 1- جستجوي فهرست 4-داده هاي لازم براي تعامل با وب سرويس وب سرويس کاربرد 5- پيام درخواست SOAP 6- پيام پاسخ SOAP
وب سرويس در يک نگاه- مثال
استفاده کنندگان سازمانهاي بزرگ و پويا داراي نياز به يکپارچگي اتحاديه ها بانکها بيمه خرده فروشان برنامه هاي کاربردي
مزاياي وب سرويس ارتباط بين وسايل گوناگون محاسباتي استفاده همزمان از آن در جاهاي مختلف برنامه هاي کاربردي با پيوند ضعيف حمايت از اين تکنولوژي توسط رهبران صنعت نرم افزار
محدوديتها امنيت حريم خصوصي قابليت اطمينان اداره کردن تراکنشها قابليت اداره کارايي
منابع http://www.deitel.com University of Maryland, School of business, Robert H.Smith ASP.NET, mridula parihar, published by hungry Minds UDDI.org Microsoft.com http://w3c.org https://www-3.ibm.com/services/uddi/
? ? ? ? از توجه شما متشکرم ? ? ? ?