रूट ऑप्टिमाइज़ेशन एपीआई दो तरीकों से जानकारी देता है:
OptimizeTours
एक सिंक्रोनस तरीका है, जोOptimizeToursRequest
के रिस्पॉन्स के तौर पर, ऑप्टिमाइज़ किया गया रूट दिखाता है. क्लाइंट को रूट ऑप्टिमाइज़ेशन एपीआई के साथ ओपन कनेक्शन बनाए रखना होगा. ऐसा तब तक होगा, जब तक अनुरोध प्रोसेस नहीं होता औरOptimizeToursResponse
या गड़बड़ी नहीं दिखती.BatchOptimizeTours
एक एसिंक्रोनस तरीका है, जो एक या ज़्यादाOptimizeToursRequest
के लिए यूआरआई और उनसे जुड़ेOptimizeToursResponse
मैसेज को स्वीकार करता है और लॉन्ग चल रहे ऑपरेशन (एलआरओ) (REST, gRPC) का रिसॉर्स नाम बताता है. इसका इस्तेमाल बैच पूरा होने की जांच करने के लिए किया जाता है.OptimizeToursRequest
को बैकग्राउंड में प्रोसेस किया जाता है, ताकि क्लाइंट रूट ऑप्टिमाइज़ेशन एपीआई के लिए खुले कनेक्शन को सिर्फ़ तब तक बनाए रख सकें, जब तक {10BatchOptimizeToursRequest
/} सबमिट किया जा सके.GetOperation
BatchOptimizeTours
, Google Cloud Storage से मिले अनुरोधों को पढ़ता है और उन्हें दिए गए जवाबों को लिखता है.
इस्तेमाल के उदाहरण
छोटे और आसान अनुरोधों या कुछ मिनट या इससे कम समय में समाधान करने वाले अनुरोधों के लिए, OptimizeTours
सुविधाजनक है. रूट ऑप्टिमाइज़ेशन एपीआई के साथ लंबे समय तक चलने वाले कनेक्शन को बनाए रखने से, समाधान वापस पाने से पहले रुकावट आने का जोखिम बढ़ जाता है.
BatchOptimizeTours
, बड़े अनुरोधों और अनुरोधों को ज़्यादा समय तक हल करने की सुविधा दे सकता है. ऐसा इसलिए, क्योंकि इसके लिए रूट ऑप्टिमाइज़ेशन एपीआई के साथ लंबे समय तक चलने वाले कनेक्शन की ज़रूरत नहीं होती.
लंबे समय तक चलने वाली कार्रवाइयां
किसी बैच के पूरा होने की स्थिति देखने के लिए, एलआरओ को रूट ऑप्टिमाइज़ेशन एपीआई से पढ़ा जाता है. इसके लिए, GetOperation
तरीके का इस्तेमाल किया जाता है. एलआरओ में एक done
प्रॉपर्टी होती है, जो यह बताती है कि पूरे बैच की प्रोसेसिंग पूरी हो गई है या नहीं. साथ ही, एक error
फ़ील्ड होता है जो प्रोसेसिंग के दौरान मिलने वाली गड़बड़ियों की रिपोर्ट करता है. अगर done
सही है और कोई error
मौजूद नहीं है, तो बैच पूरा हो जाएगा. error
के मौजूद होने का मतलब है कि कुछ या सभी बैच प्रोसेस नहीं किए जा सके.
आम तौर पर, BatchOptimizeTours
अनुरोध की लाइफ़साइकल कुछ इस तरह होती है:
- रूट ऑप्टिमाइज़ेशन एपीआई में
BatchOptimizeToursRequest
सबमिट करें. इससे, एलआरओ के रिसॉर्स का नाम दिखता है. - जब तक एलआरओ के जवाब में
done
याerror
प्रॉपर्टी नहीं दिखतीं, तब तक एलआरओ रिसॉर्स के नाम वालाGetOperation
पोल बनाएं. - अगर
done
सही है और कोई गड़बड़ी मौजूद नहीं है, तोBatchOptimizeTours
अनुरोध में दिए गए Google Cloud Storage यूआरआई सेOptimizeToursResponses
पढ़ें. अगरerror
मौजूद है, तो गड़बड़ी की जांच करें और Google Cloud Storage में उस गड़बड़ी के हिसाब सेOptimizeToursRequest
अपडेट करें. अगर गड़बड़ी का पता चलता है, तो उसके हिसाब से फिर से कोशिश करें.
कमांड लाइन या क्लाइंट लाइब्रेरी का इस्तेमाल करके, कई तरीकों से OptimizeTours
और BatchOptimizeTours
अनुरोध भेजे जा सकते हैं.