خدمت وب: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
FreshmanBot (بحث | مشارکت‌ها)
جز ←‏میزبانی صفحات وب: اصلاح فاصله مجازی با استفاده از AWB
FreshmanBot (بحث | مشارکت‌ها)
جز اصلاح فاصله مجازی + اصلاح نویسه با استفاده از AWB
خط ۱:
{{ویکی‌سازی}}
 
از نگاه [[فناوری اطلاعات]] و بر اساس استانداردهای تعریف شده، [[وب سرویس]] (یا خدمت وبی) سرویس یا خدمتی است که از طریق وب (اینترنت) توسط یک دستگاه الکترونیکی (سرور یا خادم) به دستگاه الکترونیکی دیگر (سریس گیرنده یا Client)، ارائه می‌شود. در وب سرویس، از فناوری‌های وبی مانند [[HTTP]] - که به صورت پایه برای ارتباط انسان با سرور(Human-to-machine) طراحی شده استشده‌است – برای ارتباط بین نرم‌افزار سرویس دهنده و نرم‌افزار سرویس گیرنده استفاده می‌شود. وب سرویس از [[HTTP]] بیشتر برای انتقال اطلاعات و دادها استفاده می‌نماید، این اطلاعات به صورت فایل و اغلب با دو استاندارد متداول [[XML]] و [[جی‌سن]] رد و بدل می‌شوند.
 
در عمل و در بیشتر موارد وب سرویس به صورت یک رابط [[وب بین]] نرم‌افزارهای مختف مانند نرم‌افزارهای موبایل یا [[وب سایت]]‌های مختلف با [[پایگاه داده‌ها]] (Data Base) استفاده می‌شود. همچنین وب سرویس این امکان را فراهم می‌نمایند تا اطلاعات و داده‌های مختلف ازمنابع مختلف، در یک [[صفحه نمایش]] داده شوند. به عنوان مثال با استفاده از وب سرویس‌های سازمان بورس و سازمان‌های هواشناسی اطلاعات مربوط به بورس و پیش بینیپیش‌بینی وضع هوا در کنار هم نمایش داده می‌شود.
 
سازمان [[W3C]] واژهٔ وب سرویس را به صورت زیر ترجمه نموده است: «یک نرم‌افزار سیستمی که برای در خواست و پاسخ (فعل و انفعال) بین عناصر غیرانسانی (machine-to-machine) با قابلیت درک متقابل ([[interoperability|interoperable]]) طراحی شده است».
 
== میزبانی صفحات وب ==
میزبانی یا وب هاستینگ همان چیزی است که وقتی می خواهید وب سایتتان روی شبکه بین المللیبین‌المللی (اینترنت) برای همه قابل دیدن باشد به آن نیاز دارید. به زبان ساده، وب سایت شما باید روی یک سرویس دهنده میزبان قرار گیرد. کامپیوتر شخصی شما هم می‌تواند به صورت یک سرویس دهنده میزبان تنظیم و راه اندازی شود اما اگر قصدتان جذب ترافیک یا «بازدید کنندهبازدیدکننده» زیاد برای سایتتان است، این کار زیاد عاقلانه به نظر نمی رسد برای اینکه وب سایت شما در اینترنت در دسترس باشد لازم است کامپیوتر شما همیشه روشن و به اینترنت متصل باشد؛ به محض خاموش شدن کامپیوتر دیگر کسی سایت شما را نمی بیند. از طرف دیگر اگر با نرم افزارهای راه اندازی سرور آشنا نباشید، این کار می‌تواند برای شما پیچیده باشد در نتیجه اصلاح اشکالات و خرابی هایخرابی‌های احتمالی سرورتان وقت و انرژی زیادی می خواهدمی‌خواهد .
 
== مزایای مربوط به خدمات وب ==
بزرگ‌ترین مزیت روش نو از ناحیهٔ حضور [[اکس‌ام‌ال]] در اکثر ساختارهای مربوط به خدمات وب می‌آید. نیاز به اکس‌ام‌ال به خاطر غلبه بر عدم [[مقیاس‌پذیری]] (scalability) شیوه‌های پیشین در مهندسی و ساخت اینترنت است. از آنجا که اکس‌ام‌ال متن گراست (به انگلیسی: text-based)، شمه‌ای از نرمی و [[انعطاف‌پذیری]] شگفت‌آوری که در زبان انسان موجود است با سختی و شکنندگی روشهایروش‌های ماشینی ترکیب شده و ما را به ساخت سامانه‌های بسیار گسترش‌پذیر توانا می‌گرداند.
 
== استانداردهای خدمات وب ==
=== [[پروتکل دسترسی آسان به اشیاء|پروتکل دسترسی ساده به شیء]] (SOAP) ===
بر اساس پروتکل دستیابی ساده به شیء است که تمامی خدمات وب به گردش در می‌آید. منظور از پروتکل، مجموعه شرح قواعد و فرمت‌های مربوط به ارسال پیامهای مخابراتی از یک ماشین به ماشین دیگر است. SOAP پروتکل ساده‌ای ست که به منظور سازگاری (compatibility) با سکوهای (platforms) مختلف و نیز سیستم‌های عامل (operating systems) گوناگون نوشته شده استشده‌است. هدف اساسی این پروتکل را باید امکان‌پذیری مخابرات ماشین به ماشین در محیط‌های محاسباتی نامتجانس (heterogeneous) ذکر کرد.
 
=== [[زبان توصیف خدمات وب]] (WSDL) ===
خط ۲۳:
به وسیله فناوری ''شرح، کشف، و یکپارچه‌سازی فراگیر'' (Universal Description، Discovery، and Integration) می‌توان به انتشار و نیز جستجوی خدمات وب اقدام کرد. این فناوری، خدمات وب را سامان داده، و پس از شرح آن‌ها، اطلاعات بدست آمده را در یک جایگاه مرکزی قرار می‌دهد.
 
دراینجا بیشتر تأکیدمان برتعامل با منابعی است که حالت پذیر (State-full) هستند به جای استفاده از پیغامها یا عملیاتهاعملیات‌ها.
 
== انواع سبک‌های استفاده از وب سرویسهاسرویس‌ها ==
=== روش فراخوانی از راه دور - RPC ===
وب سرویس‌های این نوع، توابع توزیع شده‌ای را اجرا می‌کنند که فراخوانی شان بسیار برای تولیدگرها آشناست، به طوربه‌طور معمول ساده‌ترین واحد این مدل فراخوانی یک عملیاتی است که یک wsdl در پی دارد روشهایروش‌های دیگری که با کارکرد مشابه به عنوان شیء RPC می‌توان نام برد، Object Management Group's (OMG) و Common Object Request Broker Architecture (CORBA) و Microsoft's Distributed Component Object Model (DCOM) یا سان مایکروسیستم جاوا ست که همان (RMI)نامیده می‌شود.
 
=== معماری سرویس گرا - Service-oriented architecture ===
وب سرویس‌ها را برای پیاده‌سازی معماری با رویکرد به مفاهیم معماری سرویس گرا (SOA) می‌توان اجرا کرد که مبتنی است بر ساده‌ترین واحدهای ارتباطی که همان پیغام‌ها می‌باشند در تقابل با اعمال (operation)، به همین دلیل است که غالباً با نام سرویس‌های پیغام گرا نامیده می‌شوند. این دست از وب سرویسهاسرویس‌ها توسط اکثر تولیدکنندگان نرم‌افزار عمده در دنیا پشتیبانی می‌گردد، بر خلاف RPC در این مدل امکان اتصالات سست (loose coupling) محقق تر است به دلیل اینکه تأکید بر روی CONTRACT ی است که WSDL تولید کرده به جای اینکه بروی جزئیات زمینه اجرا باشد.
 
=== نمایانگر حالت انتقال - (Representational state transfer (REST) ===
این مدل تلاشی است در جهت توصیف یا ساخت معماری‌هایی که از http یا پروتکل‌های مشابه‌ای استفاده می‌کنند که هدفشان محدود کردن واسطه(interface) هاست به استفاده از اعمال شناخته شده و استاندارد (مثل GET، POST، PUT، DELETE بروی HTTP) دراینجا بیشتر تاکیدمان برتعامل با منابعی است که حالت پذیر(State-full) هستند به جای استفاده از پیغامها یا عملیاتهاعملیات‌ها. یک معماری مبتنی بر REST که REST-full نامیده می‌شود می‌تواند برای تعریف یک پیغام سوپ از WSDL بروی HTTP استفاده کند یا می‌تواند یک کلاس انتزاعی باشد که صرفاً بروی سوپ بنا شده باشد، یا می‌تواند تماماً بدون هیچ استفاده‌ای از سوپ ساخته شود. WSDL ۲ نه تنها اتصال به همه متدهای ورژن یک را امکانپذیر می‌کند بلکه تمامی متدهای اتصال به http را پشتیبانی می‌کند، بنابراین به نظر می‌رسد که برای [[وب سرور]]‌هایی از نوع REST این اجرا بهترین باشد، هر جند که پشتیبانی از این مشخصات فنی معماری، درون کیت‌های [[برنامه‌نویسی]] روز دنیا هنوز ضعیف می‌باشد. این برنامه‌ها معمولاً به سمت تولید ابزارهایی برای WSDL ۱ تمایل دارند.
 
== جستارهای وابسته ==