آشنایی با مفهوم وب سرویس، خدمات وب و مزایای خدمات مبتنی بر فضای وب

  • خانه وبلاگ آشنایی با مفهوم وب سرویس، خدمات وب و مزایای خدمات مبتنی بر فضای وب
وب سرویس | خدمات وب | خدمات مبتنی بر فضای وب
وبلاگ

آشنایی با مفهوم وب سرویس، خدمات وب و مزایای خدمات مبتنی بر فضای وب

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

 

وب‌سرویس‌ها نوعی نرم‌افزار اینترنتی هستند که از پروتکل‌های پیام‌رسانی استاندارد استفاده می کنند.
 

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

 

خدمات وب پلتفرم ها را به سطح بالایی در جهان وب رسانده اند.

 

وب سرویس ها چگونه کار می‌کنند؟


وب‌سرویس‌ها با استفاده از استانداردها و پروتکل‌های باز به‌منظور ادغام با برنامه‌های مختلف ساخته می‌شوند. پروتکل‌های مختلفی که وب‌سرویس‌ها از آنان استفاده می‌کنند عبارت‌اند از:
•    زبان نشانه‌گذاری توسعه‌پذیر (XML). از این زبان برای برچسب‌گذاری، کدگذاری و رمزگشایی داده‌ها استفاده می‌شود.
•    پروتکل دسترسی به اشیاء ساده (SOAP). از این پروتکل برای انتقال داده‌ها استفاده می‌شود. پروتکل SOAP به‌گونه‌ای توسعه داده‌شده که زبان‌های برنامه‌نویسی مختلف بتوانند به‌سرعت و با کمترین تلاش ارتباط برقرار کنند.
•    زبان توصیف خدمات وب (WSDL). این زبان برای گفتن اینکه چه چیزی در وب‌سرویس گنجانده‌شده است و چگونه به برنامه کاربر اتصال می‌یابد، استفاده می‌شود.
•    توصیف جهانی، کشف و یکپارچه‌سازی (UDDI). برای فهرست کردن خدمات موجود در یک برنامه استفاده می‌شود. همچنین به خدمات وب اجازه می‌دهد تا برای سرویس‌های دیگر قابل‌کشف باشند.

خدمات مبتنی بر فضای وب از پروتکل های مختلفی استفاده می کنند.

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

 

وب سرویس ها مختص به یک زبان برنامه نویسی و یا سیستم عاملی خاص نیستند.

 

اجزای خدمات وب


در سطح بنیادین، یک وب‌سرویس باید اجزای زیر را داشته باشد:
•    از طریق وب برای کاربران قابل‌دسترسی است.
•    از XML برای تبادل اطلاعات استفاده می‌کند.
•    به دلیل استفاده از استانداردهای باز، روی هر زبان برنامه‌نویسی یا سیستم‌عامل قابل پیاده‌سازی است.
•    مستقل است و با استفاده از معناشناسی رایج XML توصیف می‌شود.
•    از طریق مکانیسم مشترکی مانند UDDI قابل‌کشف است.

 

خدمات وب از اجزای مختلفی تشکیل شده است.


استفاده از خدمات مبتنی بر فضای وب


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

 

از خدمات مبتنی بر فضای وب میتوان برای پیوند داده ها در میان پلتفرم های مختلف استفاده کرد.

 

چرا به خدمات وب نیازمندیم؟


برنامه‌های کاربردی تجاری امروزی از انواع پلتفرم‌های برنامه‌نویسی برای توسعه برنامه‌های کاربردی مبتنی بر وب استفاده می‌کنند. برخی از برنامه‌ها ممکن است در جاوا توسعه داده شوند، برخی دیگر در.Net، درحالی‌که برخی دیگر در Angular JS، Node.js و ... توسعه داده می‌شوند.
اغلب اوقات، این برنامه‌های کاربردی ناهمگن، نیاز به‌نوعی از ارتباط دارند تا بین آن‌ها اتفاق بیفتد. ازآنجایی‌که آن‌ها با استفاده از زبان‌های توسعه مختلف ساخته‌شده‌اند، اطمینان از ارتباط دقیق بین برنامه‌ها بسیار دشوار است.
اینجاست که وب‌سرویس‌ها وارد می‌شوند. وب‌سرویس‌ها یک پلتفرم مشترک را ارائه می‌دهند که به برنامه‌های کاربردی متعدد ساخته‌شده بر روی زبان‌های برنامه‌نویسی مختلف اجازه می‌دهد تا توانایی ارتباط با یکدیگر را داشته باشند.

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


مزایای خدمات مبتنی بر فضای وب


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


1.    افشای کارکردهای تجاری در شبکه
 وب‌سرویس واحدی از کد مدیریت‌شده است که نوعی عملکرد را برای برنامه‌های کاربردی مشتری یا کاربران نهایی ارایه می‌دهد. این عملکرد را می‌توان از طریق پروتکل HTTP فراخوانی کرد، به این معنی که می‌توان آن را از طریق اینترنت نیز فراخوانی نمود. امروزه همه برنامه‌ها در اینترنت نیز حضور دارند که هدف خدمات وب را مفیدتر می‌کند. این بدان معناست که وب‌سرویس می‌تواند در هر نقطه از اینترنت باشد و عملکردهای لازم را در صورت نیاز ارائه دهد.


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


3.    پروتکلی استاندارد که همه آن را درک می‌کنند
 سرویس‌های وب از پروتکل استاندارد صنعتی برای ارتباطات استفاده می‌کنند.


4.    کاهش هزینه ارتباطات
 خدمات وب از پروتکل SOAP روی پروتکل HTTP استفاده می‌کنند. بنابراین کاربران می‌توانند تا از اینترنت کم‌هزینه موجود خود برای پیاده‌سازی خدمات وب استفاده کنند.

 

استفاده از خدمات وب مزایای متعددی به همراه دارد.
 

معماری خدمات مبتنی بر  فضای وب


هر فریم ورک (چارچوب) به‌نوعی معماری نیاز دارد تا مطمئن شود که کل فریم ورک به شکلی دلخواه و به‌طور مشابه در سرویس‌های وب کار می‌کند. معماری خدمات وب شامل سه نقش متمایز است که در زیر آورده شده است:
1.    ارایه‌دهنده: ارایه‌دهنده وب‌سرویس را ایجاد می‌کند و آن را برای برنامه‌هایی که کاربر قصد استفاده از آن را دارد، در دسترس قرار می‌دهد.
2.    درخواست‌کننده: درخواست‌کننده چیزی نیست جز برنامه کاربر که نیاز به تماس با یک وب‌سرویس دارد. برنامه کلاینت می‌تواند یک دات نت، جاوا یا هر برنامه مبتنی بر زبان دیگری باشد که به دنبال نوعی عملکرد از طریق یک وب‌سرویس است.
3.    کارگزار: کارگزار چیزی نیست جز برنامه‌ای که دسترسی به UDDI را فراهم می‌کند. UDDI، همان‌طورکه درمبحث قبلی نیز موردبحث قرار گرفت، برنامه کاربر را قادر می‌سازد تا وب‌سرویس را پیدا کند.


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

 

معماری خدمات مبتنی بر فضای وب شامل سه نقش متمایز است


مشخصات وب‌سرویس


خدمات وب دارای ویژگی‌های رفتاری زیر هستند:
1.    مبتنی بر XML هستند: خدمات وب از XML برای نمایش داده‌ها در لایه‌های نمایش و انتقال داده استفاده می‌کند. استفاده از XML هرگونه وابستگی به شبکه، سیستم‌عامل یا پلتفرم را حذف می‌کند چراکه XML زبان مشترکی است که همه آن را درک می‌کنند.


2.    Loosely Coupled: به این معنی است که سرویس‌گیرنده و وب‌سرویس به یکدیگر مقید نیستند، یعنی حتی اگر وب‌سرویس در طول زمان تغییر کند، نباید نحوه تماس مشتری با وب‌سرویس را تغییر دهد. اتخاذ یک معماری آزادانه جفت شده تمایل دارد تا سیستم‌های نرم‌افزاری را قابل مدیریت‌تر کرده و امکان ادغام ساده‌تر بین سیستم‌های مختلف را فراهم کند.


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


4.    توانایی پشتیبانی از فرایند تماس‌های از راه دور (RPC): سرویس‌های مبتنی بر وب، مشتریان را قادر می‌سازد تا رویه‌ها، توابع و روش‌ها را بر روی اشیاء راه دور با استفاده از یک پروتکل مبتنی بر XML فراخوانی کنند. رویه‌های راه دور، پارامترهای ورودی و خروجی را که باید توسط یک وب‌سرویس پشتیبانی شود، نشان می‌دهد.


5.    پشتیبانی از تبادل اسناد: یکی از مزایای کلیدی XML روش عمومی آن برای نمایش نه‌تنها داده‌ها، بلکه اسناد پیچیده است. این اسناد می‌توانند به‌سادگی نشان دادن یک آدرس فعلی یا به‌اندازه نمایش یک کتاب کامل باشند.

 

وب سرویس ها دارای ویژگی‌های رفتاری متعددی می باشند.
 

در انتها مایل به بیان این نکته ایم که گروه بین المللی نسیم اطلس با اتکا بر ویژگی تبادل و تعامل داده های اپلیکیشن های کاربردی مختلف و ارائه ی خدمات متنوع مبتنی بر فضای وب، آماده است تا نیاز شما همراهین گرامی در حوزه ی انواع وب سرویس و خدمات وب را برطرف نماید.
 

اشتراک گذاری
00 80 49 42 - 021

گروه بین المللی نسیم اطلس

فرآیندهای پیچیده در یک راهکار ساده