+2 امتیاز
قبل در برنامه نویسی توسط (690 امتیاز)

من می خواهم برای توسعه وب سرویس از بین روش های RESTful و SOAP یکی را انتخاب کنم، اگر کسی درباره تفاوت ها، مزایا و معایب هر کدام از این دو روش اطلاعاتی داردلطفا به من کمک کند؟ همچنین می خواهم بدانم آیا این دو روش جایگزین یکدیگر می توانند استفاده شوند یا اینکه در بعضی موارد فقط یکی کاربرد دارد و آن یکی کاربرد ندارد؟

1 پاسخ

+10 امتیاز
قبل توسط (1.1هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ
SOAP REST
بخوبی برای محیط های محاسباتی توزیع شده کاربرد دارد. برای ارتباطات مدل نقطه به نقطه (point-to-point) طراحی شده است و برای محیط های توزیع شده قابل استفاده نیست.
پرتکل و middleware های زیادی برای راه اندازی ارتباط لازم است. برای راه اندازی ارتباط احتیاج به پرتکل یا middleware خاصی نیست و فقط پرتکل HTTP کفایت می کند.
محتوای پیغام ردوبدل شده مشخص کننده سرویس فراخوانی شده می باشد. بطور معمول URL در سرویس های REST بیانگر سرویس های سیستم می باشد.
کاملا قابل اطمینان است. قابل اطمینان نیست. برای مثال ممکن است یک دستور HTTP DELETE وضعیت OK برگرداند در حالی که عملیات حذف در سرور انجام نشده است.
حجم اطلاعات منتقل شده باید منطبق با SOAP schema باشد. محدودیتی در حجم اطلاعات منتقل شده وجود ندارد.
از استانداردهای فراوانی برای مباحث امنیت، قابلیت اعتماد و تراکنش ها پشتیبانی می کند. فقط از استاندارد های مشهور مانند HTTP, SSL پشتیبانی می کند.
هر دو پرتکل SMTP و HTTP بعنوان پرتکل لایه application قابل استفاده هستند. با مدل HTTP transport ارتباط تنگاتنگی دارد.
مکانیزم error handling ندارد. مکانیزم error handling بصورت توکار دارد.
پیچدگی بالا در پیاده سازی. سادگی در پیاده سازی.

در نهایت شایان ذکر است روش SOAP بیشتر برای پیاده سازی سرویس های میانی مورد استفاده قرار می گیرد و روش REST بیشتر در مواردی کاربرد دارد که نیازی به سرویس میانی وجود ندارد و اصطلاحا ارتباط point-to-point است.

قبل توسط (1.9هزار امتیاز)
+2
عالی بود و یک تفاوت کلی SOAP میشه گفت پرتکل است ولی REST یک ایده , یک فلسفه است
قبل توسط (1.1هزار امتیاز)
بله به نکته ظریفی اشاره کردید.

سوالات مشابه

+1 امتیاز
1 پاسخ 483 بازدید
0 امتیاز
1 پاسخ 508 بازدید
سوال شده 6 سال قبل در برنامه نویسی توسط یوری (426 امتیاز)
+1 امتیاز
1 پاسخ 713 بازدید
+1 امتیاز
1 پاسخ 528 بازدید
سوال شده 5 سال قبل در برنامه نویسی توسط Simpath (187 امتیاز)
+1 امتیاز
1 پاسخ 1.9هزار بازدید
+2 امتیاز
1 پاسخ 803 بازدید
0 امتیاز
1 پاسخ 2.3هزار بازدید
0 امتیاز
0 پاسخ 543 بازدید
0 امتیاز
0 پاسخ 393 بازدید
0 امتیاز
0 پاسخ 263 بازدید
...