ट्रैफ़िक की जानकारी के लिए चुने गए विकल्प, रास्ते की जानकारी की सटीक होने और अनुरोध की परफ़ॉर्मेंस के बीच संतुलन बनाते हैं. इसके लिए, इनमें से कोई एक तरीका अपनाया जाता है:
ट्रैफ़िक के हिसाब से -- ज़्यादा से ज़्यादा सटीक नतीजे दिखाएं (ज़्यादा इंतज़ार का समय).
ट्रैफ़िक की जानकारी न होना -- जितनी जल्दी हो सके नतीजे दिखाएं (सबसे कम इंतज़ार का समय).
अनुरोध करते समय, यह तय करें कि आपको सबसे सटीक नतीजे चाहिए या सबसे तेज़ नतीजे. Routes API में ऐसे विकल्प मिलते हैं जिनकी मदद से, रिस्पॉन्स डेटा की क्वालिटी और रिस्पॉन्स मिलने में लगने वाले समय को कंट्रोल किया जा सकता है.
ट्रैफ़िक लेवल सेट करने का तरीका
Routes API, RoutingPreference (REST) और RoutingPreference (gRPC) उपलब्ध कराता है. इनकी मदद से, रास्ते का हिसाब लगाने के लिए, रास्ते की प्राथमिकताएं तय की जा सकती हैं.
डिफ़ॉल्ट रूप से, ट्रैफ़िक की जानकारी के बिना नतीजे दिखाए जाते हैं. ट्रैफ़िक के विकल्प चुनने के लिए, TRAFFIC_UNAWARE, TRAFFIC_AWARE, और TRAFFIC_AWARE_OPTIMAL रूटिंग की सेटिंग का इस्तेमाल किया जाता है. रास्ते की हर प्राथमिकता के हिसाब से, रास्ते की क्वालिटी, अनुमानित ईटीए, और रिस्पॉन्स लेटेंसी के नतीजे अलग-अलग होते हैं.
ट्रैफ़िक का हाल
ट्रैफ़िक के हाल से, ट्रैफ़िक के फ़्लो की दर का पता चलता है:
सामान्य ट्रैफ़िक: ट्रैफ़िक सामान्य रफ़्तार से चल रहा है और कोई जाम नहीं है.
हल्का से सामान्य ट्रैफ़िक: ट्रैफ़िक बढ़ रहा है और गाड़ियां कम स्पीड से चल रही हैं.
भारी ट्रैफ़िक: बहुत ज़्यादा ट्रैफ़िक, जिसमें गाड़ियों की रफ़्तार बहुत कम हो जाती है.
ट्रैफ़िक की जानकारी न होना
TRAFFIC_UNAWARE डिफ़ॉल्ट सेटिंग है. रूटिंग की इस प्राथमिकता का इस्तेमाल तब करें, जब आपको सबसे तेज़ जवाब चाहिए और रूटिंग की अनुमानित जानकारी काफ़ी हो.
TRAFFIC_UNAWARE रास्तों का हिसाब, ट्रैफ़िक की मौजूदा स्थिति को ध्यान में रखे बिना लगाया जाता है. इस रूटिंग की प्राथमिकता की वजह से, अनुरोध का जवाब सबसे तेज़ी से मिलता है (सबसे कम इंतज़ार का समय).
अगर आपने TRAFFIC_UNAWARE को चुना है, तो चुना गया रास्ता और समय, सड़क नेटवर्क और ट्रैफ़िक की औसत स्थितियों पर आधारित होता है. यह सड़क की मौजूदा स्थितियों पर आधारित नहीं होता. इस वजह से, रास्तों में ऐसी सड़कें शामिल हो सकती हैं जो कुछ समय के लिए बंद हैं. सड़क नेटवर्क में बदलाव, ट्रैफ़िक का हाल में अपडेट, और सेवा के अलग-अलग हिस्सों में बंटे होने की वजह से, किसी अनुरोध के नतीजे समय के साथ बदल सकते हैं. किसी भी समय या फ़्रीक्वेंसी पर, करीब-करीब एक जैसे रास्तों के बीच भी नतीजे अलग-अलग हो सकते हैं.
आपको ये जवाब दिखेंगे:
duration- इसमें रास्ते के लिए ईटीए शामिल होता है.staticDuration: ट्रैफ़िक की पुरानी जानकारी के आधार पर, रास्ते के लिए ईटीए.TRAFFIC_UNAWAREके लिए, इसमेंdurationजैसी ही वैल्यू होती है.
ट्रैफ़िक के बारे में जानकारी
रूटिंग की इस सेटिंग का इस्तेमाल तब करें, जब आपको TRAFFIC_UNAWARE की तुलना में रूटिंग की ज़्यादा सटीक जानकारी चाहिए. साथ ही, आपको जवाब मिलने में थोड़ी देरी होने से कोई समस्या न हो.
TRAFFIC_AWARE के लिए रूटिंग की प्राथमिकता सेट करने पर, यह सेवा ट्रैफ़िक की मौजूदा स्थिति को ध्यान में रखकर रूट का हिसाब लगाती है. इसकी वजह से, रास्ते और रास्ते की जानकारी, असल दुनिया की स्थितियों को ज़्यादा सटीक तरीके से दिखाती है. डेटा क्वालिटी में हुई इस बढ़ोतरी की वजह से, जवाब देने में लगने वाला समय बढ़ जाता है. इसलिए, परफ़ॉर्मेंस ऑप्टिमाइज़ेशन लागू किए जाते हैं, ताकि जवाब देने में लगने वाले समय को कम किया जा सके.
आपको ये जवाब दिखेंगे:
duration: रीयल-टाइम ट्रैफ़िक की जानकारी के आधार पर ईटीए.staticDurationइस रास्ते के लिए ईटीए, सिर्फ़ ट्रैफ़िक की पुरानी जानकारी के आधार पर तय किया जाता है.
ट्रैफ़िक के हिसाब से सबसे सही
राउटिंग की इस प्राथमिकता का इस्तेमाल तब करें, जब आपको सबसे अच्छी क्वालिटी के नतीजे चाहिए हों. भले ही, जवाब मिलने में कितना भी समय लगे. इस रूटिंग की प्राथमिकता में, जवाब मिलने में सबसे ज़्यादा देरी होती है (सबसे ज़्यादा इंतज़ार का समय).
TRAFFIC_AWARE_OPTIMAL रूटिंग की प्राथमिकता सेट करने पर, सेवा ट्रैफ़िक की मौजूदा स्थिति को ध्यान में रखकर रूट का हिसाब लगाती है. हालांकि, परफ़ॉर्मेंस ऑप्टिमाइज़ेशन लागू नहीं करती. इस मोड में, सर्वर सबसे सही रास्ता ढूंढने के लिए, सड़क नेटवर्क की ज़्यादा बारीकी से खोज करता है.
TRAFFIC_AWARE_OPTIMAL रूटिंग की प्राथमिकता, maps.google.com और Google Maps मोबाइल ऐप्लिकेशन में इस्तेमाल किए जाने वाले मोड के बराबर है.
Compute Route Matrix के साथ इस विकल्प का इस्तेमाल करने पर, अनुरोध में मौजूद एलिमेंट की संख्या (शुरुआती जगहों की संख्या × मंज़िलों की संख्या) सीमित होती है. Compute Route Matrix की सीमाओं के बारे में ज़्यादा जानने के लिए, रूट मैट्रिक्स की गणना करना लेख पढ़ें.
आपको ये जवाब दिखेंगे:
duration: रीयल-टाइम ट्रैफ़िक की जानकारी के आधार पर, रास्ते के लिए ईटीए.staticDuration: ट्रैफ़िक की पुरानी जानकारी के आधार पर, रास्ते के लिए ईटीए.
रवानगी का समय सेट करना (ज़रूरी नहीं)
इस प्रॉपर्टी का इस्तेमाल सिर्फ़ ट्रैफ़िक की जानकारी देने वाले अनुरोधों के लिए करें. इनमें, रवाना होने का समय आने वाले समय का होना चाहिए. अगर आपने departureTime प्रॉपर्टी सेट नहीं की है, तो यह डिफ़ॉल्ट रूप से उस समय पर सेट हो जाती है जब आपने अनुरोध किया था.
departureTime प्रॉपर्टी का इस्तेमाल, TRAFFIC_AWARE और TRAFFIC_AWARE_OPTIMAL विकल्पों के साथ करें. ऐसा तब करें, जब आपको रूट चुनते समय, सेवा के ट्रैफ़िक का अनुमान लगाने के तरीके में बदलाव करना हो.
TRAFFIC_UNAWARE: सुझाव नहीं दिया गया, क्योंकि रास्ते और समय का विकल्प, सड़क नेटवर्क और ट्रैफ़िक की औसत स्थितियों पर आधारित होता है.TRAFFIC_AWAREऔरTRAFFIC_AWARE_OPTIMAL: इन्हें जल्द ही शुरू होने वाली यात्राओं के लिए इस्तेमाल करने का सुझाव दिया जाता है, क्योंकि ये प्राथमिकताएं ट्रैफ़िक की लाइव स्थिति को ध्यान में रखती हैं. ट्रैफ़िक की लाइव जानकारी,departureTimeके जितना करीब होगी उतनी ही ज़्यादा अहम और काम की होगी. रवानगी का समय जितना आगे का सेट किया जाएगा, रास्ते चुनने के लिए ट्रैफ़िक के पुराने डेटा को उतना ही ज़्यादा ध्यान में रखा जाएगा.
उदाहरण: ट्रैफ़िक के हिसाब से रूटिंग चुनने का तरीका
यहां दिए गए JSON कोड से पता चलता है कि अनुरोध मैसेज की इकाई के मुख्य हिस्से में, TRAFFIC_AWARE_OPTIMAL रूटिंग की प्राथमिकता को कैसे सेट किया जाता है.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }