وب سرویس (Web Service)
در ادامه مطلب توضیح مختصری در رابطه با وب سرویس ها و نحوه کلی استفاده از آنها را بیان کرده ام و امیداورم مطالب گفته توسط بنده مورد استفاده شما دوستان عزیز واقع بشود
وب سرویس (Web Service)
در مفاهیمی که از وب معنایی شناختیم قسمت بسیار پررنگی را به نام فایل های XML و همینطور زبان RDF که خود آن مبتنی بر XML ها بود را آشنا شدیم که بسیار بسیار نقش پررنگی را در وب معنایی و همچنین دنیای امروز نرم افزارها و تکنولوژی ها دارند، این مساله نیاز ما را به این که ما خدماتی را جدا از منطق کاری (Business Logic) داشته باشیم که در اینترنت، اینترانت و اکسترانت خدماتی را به ما ارائه کنند بسیار محسوس است و این وظیفه را وب سرویس ها برای ما انجام خواهند داد.
وب سرویس ها که بر اساس فایل های XML کار می کنند و بر روی پروتکل های استاندارد وب قابل دسترسی می باشند باید برای اسفاده از آن سه مرحله زیر را بخوبی بشناسیم:
1. این که چگونه وب سرویسی که می خواهیم را پیدا کنیم [Universal Description, Discovery and Integration (UDDI)].
2. به چه روشی آن را تعریف کنیم [Web Service Definition Language (WSDL)].
3. و در آخر چگونه به وب سرویس خودمان دسترسی داشته باشیم [Simple Object Access Protocol (SOAP)].
و ما با داشتن شناختی درست از وب سرویس ها می توانیم از ترکیب آنها در وب معنایی بهره مند شویم و سرویس های وب معنایی را تشکیل دهیم که از ترکیب وب سرویس ها، وب معنایی با استفاده از آنتولوژی ها بوجود می آید.
این کار به خودی خود چالشهایی را برای ما همراه خواهد داشت این که جستجو کنیم برای کار ما بهترین وب سرویس ها کدامین خواهد بود سپس با انتخاب سرویس های مورد نیاز خودمان از بین سرویس های موجود و ترکیب کردن این سرویس ها برای رسیدن به هدف نهایی خودمان و در آخر اجرای وب سرویس ها بر طبق سناریوها و کنترل (مانیتور) کردن کارها تا بر طبق خواسته های ما جلو برود.
· Universal Description, Discovery and Integration [UDDI] : برای جستجو وب سرویس ها ما از UDDI های استانداردی که توسط شرکت های معتبری همچون IBM, Ariba و Microsoft ارائه می شود که فرمتی مطابق با استاندارد ارائه شده در سال 2000 را دارا هستند و فرمتی مانند جدول زیر را دارند:
UDDI Registry |
||||||
|
I. صفحات سفید [White Page]: این صفحات به معرفی کامل شرکتی که وب سرویس را ارائه می دهد می پردازد.
II. صفحات زرد [Yellow Page]: ساختار و شِما کلی از وب سرویس های مختلفی که شرکت مورد نظر ارائه میدهد معرفی شده است.
III. صفحات سبز [Green Page]: اطلاعات فنی و کامل با رعایت جزئیات از وب سرویس مورد نظر شما را داراست.
· Web Service Definition Language (WSDL) : WSDL ها که ساختاری از فایل های XML را دارند وظیفه نمایش جزئیات پیغام های رد و بدل شده میان کاربر و وب سرویس را بر عهده دارند. چگونگی ارتباط WSDL به سادگی است و شما این ارتباط را در شکل زیر مشاهده می نمایید:
با استفاده از WSDL ما می توانیم ارتباط خود را توسط ارتباطات SOAP برقرار کنیم و درخواست خودمان را ارسال کنیم و انتظار دریافت پاسخ را داشته باشیم اما SOAP به چه روشی عمل می کند ؟
· Simple Object Access Protocol (SOAP) : پروتکل SOAP ساختار ارسال و دریافت پیغام ها از وب سرویس ها را برای ما مشخص می کند و به زبان ساده تر SOAP وظیفه انتقال فایل های XML ما را میان نرم افزار (کاربر) و وب سرویس را عهده دار است که ساختار کلی فایل های SOAP مانند زیر است :
HTTP Header |
||||||
|
هر پیغام SOAP دارای دو بخش کلی است
I. SOAP Header: شامل اطلاعاتی از در رابطه با مشخصات پیغام است مثل ایکه بخواهیم یک پیغام را رمز کنیم در این قسمت معرفی می شود.
II. SOAP Body : که پیغام مورد نظر در این قسمت قرار می گیرد.
باید توجه کنیم که SOAP توسط خود پروتکل HTTP منتقل می شود در زیر نمونه ای از پیغام SOAP را می توانید مشاهده کنید:
درخواست
1 |
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelops" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encodin/"> |
2 |
<SOAP-ENV:Body> |
3 |
<m:GetLastTradePrice xmlns:m="Some-URL"> |
4 |
<symbol>DIS</symbol> |
5 |
</m:GetLastTradePrice> |
6 |
</SOAP-ENV:Body> |
7 |
</SOAP-ENV:Envelope> |
همانطور که مشاهده می کنید درخواست آخرین قیمت را ارسال کرده ایم و وب سرویس به ما پاسخی مانند زیر را برگردانده است:
دریافت پاسخ
1 |
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelops" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encodin/"> |
2 |
<SOAP-ENV:Body> |
3 |
<m:GetLastTradePrice xmlns:m="Some-URL"> |
4 |
<Price>14700</Price> |
5 |
</m:GetLastTradePrice> |
6 |
</SOAP-ENV:Body> |
7 |
</SOAP-ENV:Envelope> |
این بود نگاهی کلی به ساختار و آشنایی کلی به مفهومی به نام وب سرویس ها در دنیای وب کنونی از حوصله و شکیبایی شما سپاسگذارم.
با سلام
من در پی مطالبی در زمینه ی ترکیب سرویس های ابری و گرید در وب معنایی هستم
اگه مطالبی در این زمینه دارید لطفا کمکم کنید
از لطف شما سپاسگذارم