تعرض Route Optimization API طريقتَين:
OptimizeToursهي طريقة متزامنة تعرض مسارًا محسّنًا في استجابة لطلبOptimizeToursRequest. يجب أن يحافظ العملاء على اتصالٍ مفتوحٍ بواجهة برمجة التطبيقات Route Optimization API إلى أن تتم معالجة الطلب ويُعرض رمزOptimizeToursResponseأو خطأ.BatchOptimizeToursهي طريقة غير متزامنة تقبل عناوين URL لرسالةOptimizeToursRequestواحدة أو أكثر ورسائلOptimizeToursResponseالمقابلة، وتُعيد اسم المورد لعملية طويلة الأمد (LRO) (REST أو gRPC) التي تُستخدَم للتحقّق من اكتمال الحزمة. تتم معالجة رسائلOptimizeToursRequestفي الخلفية، لذلك يحافظ العملاء على اتصالات مفتوحة مع Route Optimization API فقط لفترة كافية لإرسال الرسالةBatchOptimizeToursRequestأو الاتصال بالرسالةGetOperationللتحقّق من حالة LRO. يقرأBatchOptimizeToursالطلبات الواردة من Google Cloud Storage ويكتب الردود المرسَلة إليها.
حالات الاستخدام
OptimizeTours مناسب لحلّ الطلبات الصغيرة والبسيطة، أو لمعالجة الطلبات التي تستغرق بضع دقائق أو أقل. يؤدي الحفاظ على اتصالات دائمة
بواجهة برمجة التطبيقات Route Optimization API إلى زيادة خطر انقطاع الاتصال قبل
تقديم حلّ.
يمكن لخدمة BatchOptimizeTours معالجة الطلبات الأكبر حجمًا والطلبات التي تستغرق وقتًا أطول في حلّها، لأنّها لا تتطلّب اتصالاً دائمًا بخدمة Route
Optimization API.
العمليات التي تستغرق وقتًا طويلاً
تتم قراءة عمليات إعادة التوجيه غير القابلة للتقديم أو الإيقاف من Route Optimization API باستخدام الطريقة GetOperation لفحص حالة اكتمال إحدى الدفعات. تتضمّن عمليات المعالجة المحدودة الوقت سمة done
تشير إلى ما إذا كانت معالجة الحزمة بأكملها قد اكتملت، وحقل error
يُبلغ عن الأخطاء التي حدثت أثناء المعالجة. إذا كان done صحيحًا ولم يكن هناك error، يعني ذلك أنّه تم إكمال الحزمة بنجاح. يشير ظهور الرمز
error إلى تعذُّر معالجة بعض الدفعات أو كلها.
في ما يلي دورة حياة طلب BatchOptimizeTours النموذجية:
- أرسِل
BatchOptimizeToursRequestإلى Route Optimization API، التي تُعيد اسم المورد لطلب LRO. - استطلِع
GetOperationباستخدام اسم مورد LRO الذي تم إرجاعه إلى أن تظهر السمتَانdoneأوerrorفي استجابة LRO. - إذا كان
doneصحيحًا ولم يكن هناك خطأ، اقرأOptimizeToursResponsesمن معرّفات الموارد المنتظمة (URI) في Google Cloud Storage المحدّدة في طلبBatchOptimizeTours. إذا كانerrorمتوفّرًا، عليك فحص الخطأ وتعديلOptimizeToursRequestوفقًا لذلك في Google Cloud Storage وإعادة المحاولة حسب الحاجة استنادًا إلى الخطأ الذي تم رصده.
يمكنك إرسال طلبات OptimizeTours وBatchOptimizeTours بعدة
طُرق، إما من سطر الأوامر أو باستخدام مكتبة عملاء.
المقالة التالية: تقديم طلب بيانات من واجهة برمجة التطبيقات