لماذا استخدام بقية بدلا من الصابون على أساس الخدمات ؟ [مغلقة]

StackOverflow https://stackoverflow.com/questions/90451

  •  01-07-2019
  •  | 
  •  

سؤال

حضر مثيرة للاهتمام التجريبي على بقية اليوم ، ومع ذلك ، لم أفكر في سبب واحد (ولا واحد قدم) لماذا تبقى في حال أفضل أو أسهل للاستخدام وتنفيذ من الصابون الخدمات القائمة على المكدس.

ما هي بعض الأسباب لماذا شخص في "العالم الحقيقي" استخدام بقية بدلا من الصابون على أساس الخدمات ؟

هل كانت مفيدة؟

المحلول

أقل النفقات العامة (لا يوجد صابون مغلف التفاف كل مكالمة في)

أقل الازدواجية (HTTP بالفعل تمثل عمليات مثل حذف, يضع, على, الخ.التي يجب أن تكون على خلاف ذلك ممثلة في صابون مغلف).

أكثر توحيدا - HTTP العمليات مفهومة جيدا و تعمل باستمرار.بعض الصابون تطبيقات يمكن الحصول على صعب.

أكثر الإنسان للقراءة قابلة للاختبار (أصعب اختبار الصابون فقط مع متصفح).

لا تحتاج إلى استخدام XML (حسنا أنك لا يجب أن الصابون سواء ولكن ذلك لا يجعل الشعور بما أنك بالفعل تفعل تحليل مغلف).

المكتبات الصابون (نوع من) سهلة.ولكن كنت التلخيص بعيدا الكثير من التكرار تحتها كما أشرت.نعم في نظرية الصابون يمكن أن تذهب على النقل الأخرى وذلك لتجنب ركوب فوق طبقة تفعل أشياء مماثلة ، ولكن في الواقع فقط عن كل الصابون العمل سوف تفعل أي وقت مضى عبر HTTP.

نصائح أخرى

راحة الخدمات هي أبسط من ذلك بكثير تستهلك من الصابون القائمة على (العادية) الخدمات.والسبب في ذلك هو أن تبقى على أساس طبيعي طلبات HTTP التي تمكن القصد أن يكون الاستدلال من نوع طلب (GET = retrive بعد = كتابة حذف = إزالة, الخ...) تماما عديمي الجنسية.من ناحية أخرى يمكن القول أنه أقل مرونة لأنه لا بعيدا مع مفهوم رسالة المغلف الذي يحتوي على طلب السياق.

في تجربتي كان الصابون المفضل عن الخدمات داخل المؤسسة و بقية وقد فضل عن الخدمات التي يتعرض لها كما واجهات برمجة التطبيقات العامة.

مع أدوات مثل WCF في .NET framework هو تافهة جدا لتنفيذ الخدمة كما بقية أو الصابون.

بعض ذات الصلة القراءة:

سأفترض أنه عندما نقول "خدمات ويب" تعني الصابون WS-* مجموعة من المعايير.(وإلا لا يمكن القول أن باقي الخدمات هي "خدمات ويب".)

الكنسي الحجة هي أن بقية الخدمات هي أقرب تطابق تصميم ويب - وهذا هو ، تصميم HTTP والبنية الأساسية المرتبطة بها.وبالتالي استخدام بقية الخدمة سوف تكون أكثر توافقا مع القائمة أدوات الويب والتقنيات.

بالطبع بمجرد الحفر في التفاصيل تجد أن كل من نهج القوة في سيناريوهات مختلفة.هو تلك التفاصيل التي أنت مهتم بها ؟

النفقات العامة ليس من المهم جيدة العمارة.

بقية ليس البروتوكول هو العمارة التي تشجع جيدة قابلة التصميم.وهو اختيار كثير من الأحيان لأن الكثير من الحرية في RPC يمكن أن يؤدي بسهولة إلى سوء التصميم.

والسبب الآخر هو التنبؤ تكلفة راحة البروتوكولات عبر HTTP لأنه يمكن الاستفادة من التكنولوجيات القائمة (أساسا الوكلاء).RPC التكلفة الأولية منخفضة جدا ولكنها تميل إلى زيادة كبيرة مع حمولة تكثيف.

بقية تنفيذ الملحد و أكثر شفافية و هذا يجعل من رائعة واجهات برمجة التطبيقات العامة ، وخاصة بالنسبة كبيرة مواقع مثل فليكر ، الأمازون أو Digg التي تستخدم واجهات برمجة التطبيقات وأدوات التسويق حقا نريد من الناس أن تستهلك البيانات الخاصة بهم.أنها لا تريد أن تكون اليد القابضة 1000s من المطورين المبتدئين الذين يحاولون تصحيح بهم لغة البرمجة الاختيار هو عربات التي تجرها الدواب الصابون المكتبة.

مقابل SOAP و WSDL ، والتي هي أفضل للتطبيقات الداخلية ، حيث لديك انخفاض في المكتبات المعروفة clueful الناس على كلا الطرفين.(و ربما لا نهتم بالأشياء مثل الإنترنت-نطاق موازنة التحميل ، HTTP التخزين المؤقت.... الخ) ثم تحصل على واجهات برمجة التطبيقات التي هي النفس-توثيق وحفظ أنواع إلخ.مع العمل الصفر.

حصلت على قراءة روي إيفاد أكثر من ممتاز أطروحة عن هذا الموضوع.وقال انه يجعل حالة ممتازة و كان بالتأكيد طريقة قبل وقته عندما كتب (2000).

ستيف Vinoski بلوق وله أحدث المقالات هي بالتأكيد تستحق يلاحقونهم.إنه السابقة كوربا المعلم الذي كتب على الأرجح أفضل كتاب في هذا الموضوع مع ميشي هينينج "المتقدمة كوربا® البرمجة C++".بيد أنه منذ رأيت خطأ من العميل/الخادم الطرق و الآن يقسم بقية.

بقية يسمح الخاص بك غير تحور العمليات (التي تستخدم عادة الحصول على الفعل) إلى مؤقتا.هذا هو مؤقتا من قبل العميل و/أو مؤقتا من قبل الوكلاء.هذا يمكن أن يكون فوز كبير!

الراحة هي في الأساس مجرد وسيلة لتنفيذ خدمات ويب.انها مجرد وسيلة لاستخدام HTTP صحيح الاستعلام عن خدمات ويب التي تحاول ضرب.

http://www.xfront.com/REST-Web-Services.html http://en.wikipedia.org/wiki/Representational_State_Transfer

هذا هو السوبر بسيطة.يمكنك أن تفعل ذلك مع المتصفح عن طريق http الفعل:الحصول على.لم تجد المتصفح يدويا لا generic طلب POST http بسهولة

وهنا نقطة بيانات واحدة:أمازون تقدم واجهات برمجة التطبيقات في كل من الراحة و الصابون صيغ و 85 ٪ من استخدام بقية.

بقية أسهل لتنفيذ أسهل للفهم و الأداء العالي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top