تعرض 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
بعدة
طُرق، إما من سطر الأوامر أو باستخدام مكتبة عملاء.