سؤال

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

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

المحلول

أنا لا أرى كيف الخلط طلبات يجعل من أي معنى في بقية.منذ URL في بقية الخدمات القائمة على تمثل عملية لأداء والبيانات التي لأداء ذلك ، مما يجعل دفعة الطلبات بجدية كسر النموذج المفاهيمي.

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

POST /folders/ROOT/the/folder/name/users?userId=56&userId=87&userId=45

التي هي في الأساس:

PUT /folders/ROOT/the/folder/name/users/56
PUT /folders/ROOT/the/folder/name/users/87
PUT /folders/ROOT/the/folder/name/users/45

مثل غيرها من المعلق أشار إلى ترحيل النتائج من الحصول على يمكن أن يتم عن طريق طلب المعلمات:

GET /some/list/of/resources?startIndex=10&pageSize=50

إذا بقية الخدمات يدعم ذلك.

نصائح أخرى

إذا كنت حقا بحاجة إلى دفعة ، Http 1.1 يدعم مفهوم يسمى HTTP Pipelining الذي يسمح لك لإرسال طلبات متعددة قبل تلقي استجابة.التحقق من ذلك هنا

أنا أتفق مع داريل ميلر.HTTP بالفعل يدعم HTTP Pipelining ، بالإضافة إلى HTTP يدعم تبقي على قيد الحياة مما يتيح لك دفق HTTP متعددة العمليات بشكل متزامن في نفس المقبس لتجنب الاضطرار إلى انتظار الردود قبل تدفق الطلبات الجديدة إلى الملقم.... الخ

حتى مع HTTP pipelining والحفاظ على قيد الحياة يمكنك الحصول على تأثير الخلط أثناء استخدام نفس الكامنة بقية API - لذلك هناك عادة لا حاجة آخر بقية API الخدمة

الفريق مع أستوريا من متعدد جزء mime إلى إرسال مجموعة من المكالمات.مختلفة من pipelining المتعددة جزءا رسالة يمكن الاستدلال على القصد من ذرية العملية.يبدو أنيقة بدلا من ذلك.

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

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