سرویس گرایی (SOA)
معمولا واژه های معماری سرویس گرا و سرویس های وب اشتباها به جای هم و به صورت معادل استفاده می شوند لذا لازم است این دو مفهوم به صورت دقیق تر بررسی شوند. سرویس های وب را باید عینیت بخش معماری سرویس گرا دانست.
سرویس های وب (Web Service):
نرم افزارهای کاربردی که تحت وب منتشر شده، شناسائی و مورد فراخوانی قرار می گیرند
مستقل از سکو و زبان هستند
نوعی از پیاده سازی معماری سرویس گرا می باشند
با منطق حرفه در تماس هستند ولی هیچ شخصی مستقیما با آنها ارتباط ندارد
خود شمول هستند
خود توصیف هستند.
یک رهیافت کلیدی برای عینیت بخشیدن به معماری سرویس گرا هستند
تعریف سرویس وب از نظر W3C : یک سرویس وب، نوعی سیستم نرم افزاری است که جهت تعامل ماشین با ماشین در سطح شبکه طراحی شده است و دارای یک تعریف(توصیف) قابل پردازش توسط ماشین با نام WSDL است. دیگر سیستم ها بر طبق این توصیف از قبل مهیا شده با سرویس دهنده تعامل خواهند داشت، پیامها توسط پروتکل SOAP (ترکیب HTTP با XML ) و یا سایر پروتکل های مربوطه منتقل می شوند.
تفاوت سرویس های وب با نرم افزارهای تحت وب
سرویس وب باید دارای شرایط زیر باشد:
- در سطح وب در دسترس باشد
- از استاندارد XML جهت تبادل اطلاعات استفاده کند
- به هیچ سکو یا سیستم عاملی وابسته نباشد.
- با سرویس های تحت وب تعامل دارد و نه کاربران. خود توصیف باشد
- قابل شناسائی باشد(جهت استفاده سرویس گیرندگان ابتدا باید شناسائی و کشف شود) در حالیکه نرم افزار تحت وب این ویژگیها را دارد:
- از استاندارد HTML برای تبادل اطلاعات استفاده می کند.
- وابسته به فناوری و سکو ست(ASP،PHP،CGI ، ..)
- توسط اشخاص با مرورگر وب مورد استفاده قرار می گیرد.