Route Optimization API دو روش را نشان می دهد:
-
OptimizeTours
یک روش همزمان است که یک مسیر بهینه شده را در پاسخ بهOptimizeToursRequest
برمی گرداند. مشتریان باید تا زمانی که درخواست پردازش شود وOptimizeToursResponse
یا خطا برگردانده شود، یک اتصال باز به Route Optimization API حفظ کنند. -
BatchOptimizeTours
یک روش ناهمزمان است که URI ها را برای یک یا چندOptimizeToursRequest
و پیامOptimizeToursResponse
مربوطه می پذیرد و نام منبع یک عملیات طولانی مدت (LRO) ( REST ، gRPC ) را که برای بررسی تکمیل دسته ای استفاده می شود، برمی گرداند.OptimizeToursRequest
ها در پس زمینه پردازش می شوند، بنابراین کلاینت ها اتصالات باز به Route Optimization API را فقط به اندازه کافی برای ارسالBatchOptimizeToursRequest
یا تماس باGetOperation
برای بررسی وضعیت LRO حفظ می کنند.BatchOptimizeTours
درخواستها را از Google Cloud Storage میخواند و پاسخها را مینویسد.
موارد استفاده
OptimizeTours
برای حل درخواست های کوچک و ساده یا برای درخواست هایی با زمان حل چند دقیقه یا کمتر مناسب است. حفظ اتصالات طولانی مدت به Route Optimization API خطر وقفه را قبل از بازگشت راه حل افزایش می دهد.
BatchOptimizeTours
میتواند درخواستها و درخواستهای بزرگتر را با زمان حل طولانیتر رسیدگی کند، زیرا نیازی به اتصال طولانیمدت به Route Optimization API ندارد.
عملیات طولانی مدت
LROها از Route Optimization API با استفاده از روش GetOperation
برای بررسی وضعیت تکمیل یک دسته خوانده می شوند. LRO ها شامل یک ویژگی 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
را به روشهای مختلفی ارسال کنید، یا از خط فرمان یا با استفاده از کتابخانه مشتری.