وب سرویس چیست ؟

کسانی که  در دنیای برنامه نویسی فعالیت دارند.احتمالا تا بحال اسم وب سرویس را زیاد شنیده اند. ما بطور روزانه از وب سرویس در اپلیکیشن ها استفاده می کنیم. وب سرویسها می توانند application های شما را به Web-Application تبدیل کنند.

web service یا وب سرویس چیست ؟

در تعریف وب سرویس چیست به زبان ساده می توان گفت web service یک سیستم نرم افزاری برای پشتیبانی از تعامل بین دستگاه و ماشین در شبکه است. به زبان ساده تر، یک سیستم از سیستم دیگری سرویس می گیرد. در تعریفweb service بطور خلاصه می توان گفت:

وب سرویس ها اجزای یک نرم افزار هستند.

وب سرویس ها از طریق پروتکل ارتباط برقرار می کنند.

web service ها نیازی به منابع بیرونی نداشته و اصطلاحا self-contained هستند.

وب سرویس ها از طریق UDDI قابل جستجو هستند.

وبسرویس ها توسط application های دیگر قابل استفاده اند.

XML و HTTP پلت فرم اولیه وبسرویس هاست.

سرویس های وب دارای دو کلاس عمده هستند:

سازگار با REST

وب سرویس arbitrary

استانداردهای وب سرویس ها چیست؟

XML:

  یکی از روش ها و استانداردهای اولیه برای استفاده از وب سرویس ها، XML میباشد. این پلتفرم نیز تو سط W3C استاندارد سازی شده تا توسعه دهندگان قادر باشند بصورت استاندارد از این پلتفرم به عنوان واسط اتصال استفاده کنند.

SOAP یا Simple Object Access Protocol :

یکی دیگر از استاندارهای مهم و کاربردی در وب سرویس ها استاندارد SOAP میباشد که این پروتکل نیز همانند XML قادر است بصورت مشترک باعث اتصال موفق برنامه ها با وب سرویس گردد. در واقع پیغام های ایجاد و ارسال شده SOAP عامل اصلی و ایجاد کننده اتصال وب سرویس میباشند. بعد از اتصال پیغام بر روی بستر SOAP در صورتی که پیغام برای وب سرویس دارای مفهوم عملیاتی باشد با توجه به توابع تعریف شده دستور اجرا و نتیجه آن مجددا بر روی قالب پیغام SOAP به درخواست کننده ارسال میگردد.

UDDI یا Universal Description – Discovery and Integration :

این استاندارد حاوی یک فایل مبتنی بر XML میباشد که توسط آن شرکت ها به معرفی اتصال وب سرویس ها اقدام میکنند. از معروفترین شرکت هایی به استفاده و توسعه این استاندارد میپردازند مایکروسافت میباشد. شرکت های استفاده کننده از این فایل و استاندارد میتوانند سطح دسترسی آن را به راحتی حتی جهت معرفی در اختیار عموم قرار دهند یا شرکت های خاص.

WSDL یا Web Service Description Language:

از دیگر استاندارد های مهم که کاربرد بسیار فراوانی در وب سرویس ها دارد استاندارد WSDL میباشد. این استاندارد نیز همانند UDDI دارای یک فایل برای هر وب سرویس میباشد که این فایل با فرمت XML بوده و بصورت کلی نحوه استفاده از وب سرویس را شرح میدهد. در این فایل عناوین مهمی از جمله اینکه پورتهای خروجی و وردی وب سرویس چه پورت تعیین شده است، وجود دارد. استاندارد WSDL در کنار تمامی وب سرویس ها این فایل را ایجاد و در اختیار کاربر قرار میدهند تا به راحتی به مستندات وب سرویس دسترسی داشته باشند و بتوانند از آن استفاده کنند.

معماری وب سرویس ها

معماری های وب سرویس ها در سطح اینترنت، به طرز مختلفی در حال پیاده سازی شدن هستند.

یکی از معروف ترین معماری های وب سرویس رست ای پی آی (Rest API) نام دارد، این مدل معماری به منظور ایجاد اپلیکیشن های سمت شبکه ایجاد شده است که در حال حاضر از پروتکل های مختلفی استفاده می‌کند. یکی از پروتکل های پرکاربرد این معماری ها که در URL سایت ها مشاهده می‌شود، HTTP نام دارد. یکی از دلایل معروف بودن این معماری، نداشتن پیچیدگی بسیار زیاد نسبت به دیگر معماری ها است که می‌توان به عنوان نقطه قوت این معماری نیز از آن یاد کرد.

یکی دیگر از معماری های موجود در سطح وب، اس او ای (SOA) نام دارد، در واقع این معماری یک نوع از سبک های طراحی است که خدمات موجود در اپلیکیشن به قسمت های مختلف تقسیم می‌شود تا سرعت وب سرویس افزایش یابد. همچنین این معماری از یک پروتکل برای انتقال داده ها استفاده می‌کند.

پی آر سی (PRC) به عنوان یک پروتکل پر کاربرد، با استفاده از فراخوانی یک اپلیکیشن می‌تواند یک وب سرویس را از یک نرم افزار کامپیوتری با وسیله توابع از پیش تعریف شده، به گرفتن اطلاعات بپردازد. سپس آن اطلاعات را به نرم افزار دیگر منتقل کند. پس از بررسی استاندارد های موجود در وب سرویس ها، به مثالی از وب سرویس ها توجه کنید.

برای مثال بعد از باز کردن اپلیکیشن دیجی‌کالا در گوشی همراه تان، اطلاعات محصولی که مورد نظرتان است برایتان نمایش داده می‌شود. اما این اطلاعات در واقع در گوشی شما نیست. بلکه این اطلاعات در سمت سرور دیجی‌کالا ذخیره شده است. پس برای نمایش آن اطلاعات از سمت سرور، باید یک ارتباط یا لینکی باشد که آن اطلاعات در گوشی شما بارگذاری شود. در نتیجه آن لینک یا رابط که می‌تواند پل ارتباطی بین کلاینت و سرور باشد، وب سرویس نام دارد.

پشته (Stack) پروتکل سرویس وب

دومین روش بررسی معماری وب سرویس بررسی پشته پروتکل سرویس وب است. پشته هنوز در حال تکامل است ، اما در حال حاضر دارای چهار لایه اصلی است.

حمل و نقل خدمات:

این لایه وظیفه انتقال پیام بین برنامه ها را بر عهده دارد. در حال حاضر ، این لایه شامل Hyper Text Transport Protocol (HTTP) ، Simple Mail Transfer Protocol (SMTP) ، File Transfer Protocol (FTP) و پروتکل های جدیدتری مانند Blocks Extensible Exchange Protocol (BEEP) است.

پیام رسانی XML :

این لایه وظیفه رمزگذاری پیام ها در قالب XML مشترک را دارد تا پیام ها در هر دو انتها قابل فهم باشند. در حال حاضر ، این لایه شامل XML-RPC و SOAP است.

شرح خدمات:

این لایه وظیفه توصیف رابط عمومی برای یک وب سرویس خاص را دارد. در حال حاضر ، شرح خدمات از طریق زبان توصیف سرویس وب (WSDL) انجام می شود.

کشف سرویس:

این لایه وظیفه متمرکز کردن خدمات در یک رجیستری مشترک و ارائه عملکرد انتشار / یافتن آسان را دارد. در حال حاضر ، کشف سرویس از طریق توصیف جهانی ، کشف و یکپارچه سازی (UDDI) انجام می شود.

با تکامل سرویس های وب ، ممکن است لایه های اضافی اضافه شده و فناوری های اضافی به هر لایه اضافه شوند.

ویژگی و مزایای وب سرویس چیست ؟

استفاده مجدد از کامپوننت های نرم افزاری

Application هایی وجود دارند که اغلب از آنها استفاده می کنیم، حال این سئوال مطرح می شود که چرا باید دوباره و دوباره آنها را ایجاد کنیم؟! وب سرویس ها می توانند کامپوننت های نرم افزارهای مختلف را مانند: تبدیل ارز، گزارش آب و هوا و یا سرویس ترجمه زبانهای مختلف را به شما ارائه دهند.

 اتصال به نرم افزارهای موجود

وب سرویس ها می توانند با یک متد مشخص داده ها و اطلاعات application های مختلف را به هم پیوند داده و از این طریق مشکلات موجود در این همکاری ها را مرتفع کنند. application های مختلف با پلت فرم های مختلف می توانند بوسیله وب سرویس ها با یکدیگر تبادل اطلاعات کنند.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *