این راهنما راهاندازی آزمایشی روشهای OptimizeToursLongRunning و OptimizeToursUri API را معرفی میکند که به کاربران اجازه میدهد درخواستهای بهینهسازی غیرمسدود کننده را ارائه کنند. در یک بهینهسازی غیرمسدود، کاربر به سرعت یک پروتکل عملیاتی را از روشی دریافت میکند که میتواند برای ارجاع به وضعیت بهینهسازی با فراخوانی GetOperation استفاده شود. برای جزئیات بیشتر به عملیات طولانی مدت مراجعه کنید.
این روشهای غیرمسدود، مزایای قابلیت اطمینان را نسبت به روش مسدود کردن OptimizeTours ارائه میکنند، زیرا مشتری نیازی به حفظ اتصال به سرور در حین اجرای بهینهسازی ندارد. همچنین، این روشهای جدید اشکالزدایی خرابیها را در مقایسه با BatchOptimizeTours آسانتر میکنند، زیرا هر بهینهسازی با یک عملیات طولانی مدت (LRO) مرتبط است.
کاربرانی که ترجیح میدهند درخواست بهینهسازی را درون خطی کنند، میتوانند از روش OptimizeToursLongRunning استفاده کنند در حالی که کاربرانی که ترجیح میدهند درخواستها و پاسخ خوانده شده را با استفاده از Google Cloud Storage بارگذاری کنند، میتوانند از روش OptimizeToursUri استفاده کنند.
OptimizeToursLongRunning
مثال: یک درخواست OptimizeToursLongRunning بنویسید
قبل از درخواست، پارامترهای زیر را با مقادیر مناسب برای محیط خود جایگزین کنید:
- اطمینان حاصل کنید که اعتبارنامه پیشفرض برنامه را همانطور که در Use OAuth توضیح داده شده پیکربندی کردهاید.
PROJECT_NUMBER_OR_ID را روی شماره یا شناسه پروژه Cloud خود تنظیم کنید.
دستور زیر یک درخواست
OptimizeToursLongRunningرا به Route Optimization API ارسال می کند و شناسه عملیات مرتبط با آن را دریافت می کند. از متدGetOperationمی توان برای پرس و جو از وضعیت عملیات استفاده کرد. پس از تکمیل عملیات، فراداده همچنین حاویOptimizeToursResponseنهایی است.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursLongRunning' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.42506261000996, "longitude": -122.09535511930135 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.42421503206021, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", "costPerKilometer": 1.0 } ], } } EOM
OptimizeToursUri
مانند BatchOptimizeTours ، می توانید از OptimizeToursUri برای ادامه ذخیره درخواست و پاسخ بهینه سازی خود در Google Cloud Storage استفاده کنید. URI های فضای ذخیره سازی ابری باید در پیام درخواست OptimizeToursUri مشخص شوند. وضعیت Operation که برگردانده شده است تنها با OptimizeToursRequest ارسال شده مرتبط است.
به عنوان مثال: درخواست OptimizeToursUri ارسال کنید
قبل از درخواست، پارامترهای زیر را با مقادیر مناسب برای محیط خود جایگزین کنید:
- اطمینان حاصل کنید که اعتبارنامه پیشفرض برنامه را همانطور که در Use OAuth توضیح داده شده پیکربندی کردهاید.
PROJECT_NUMBER_OR_ID را روی شماره یا شناسه پروژه Cloud خود تنظیم کنید.
دستور زیر یک درخواست
OptimizeToursUriرا به Route Optimization API ارسال می کند و شناسه عملیات مرتبط با آن را دریافت می کند. از متدGetOperationبرای استعلام وضعیت عملیات استفاده کنید. پس از اتمام عملیات،OptimizeToursResponseاز راه دور در مسیر URI خروجی ارائه شده در درخواست ذخیره می شود.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursUri' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "input": { "uri": "gs://bucket/path/input/object.json" }, "output": { "uri": "gs://bucket/path/output/object.json" } } EOM