Routes Preferred API מספק שלוש העדפות לחישוב מסלולים. ההבדל ביניהם הוא במידת ההתחשבות בתנאי התנועה בחישוב המסלול. כל העדפת ניתוב מניבה תוצאות שונות במידה מסוימת מבחינת איכות המסלול, זמן ההגעה המשוער וחביון התגובה.
מידע על מצב התנועה
מצב התנועה מאפיין את קצב זרימת התנועה. לדוגמה:
כשאין עומסי תנועה, מצב התנועה נחשב לנורמלי, והתנועה זורמת במהירות הרגילה ללא הפרעות.
שעת העומס מתקרבת, צפיפות התנועה גדלה, מה שגורם להאטה בתנועה וליצירת תנאי תנועה קלים עד בינוניים.
בעומס כבד מאוד, קצב הזרימה יורד לאפס ונוצרים תנאי תנועה קשים.
לא מודע לתנועה
כשמגדירים את העדפת הניתוב TRAFFIC_UNAWARE, המסלולים מחושבים בלי להתחשב בתנאי התנועה. העדפת הניתוב הזו מספקת את זמן האחזור הנמוך ביותר בתשובה (התשובות מוחזרות הכי מהר).
משתמשים בהעדפת הניתוב הזו כשרוצים לקבל תשובות במהירות האפשרית, ופרטי ניתוב משוערים מספיקים.
מודעות למצב התנועה
כשמגדירים את העדפת הניתוב TRAFFIC_AWARE, המסלולים מחושבים תוך התחשבות בתנאי התנועה. כתוצאה מכך, המסלול ופרטי המסלול משקפים בצורה מדויקת יותר את התנאים בעולם האמיתי. השיפור באיכות הנתונים מגיע על חשבון זמן האחזור של התגובה, ולכן אנחנו מבצעים אופטימיזציות של הביצועים כדי לצמצם את זמן האחזור.
משתמשים בהעדפת הניתוב הזו כשרוצים פרטים מדויקים יותר על הניתוב, אבל לא אכפת לכם אם התשובות יוחזרו עם עלייה מתונה בזמן האחזור.
אופטימלי עם התחשבות במצב התנועה
כשמגדירים את העדפת הניתוב TRAFFIC_AWARE_OPTIMAL, הנתיבים מחושבים בהתחשב בתנאי התנועה, אבל לא מוחלות אופטימיזציות של הביצועים. במצב הזה, השרת מבצע חיפוש מקיף יותר ברשת הכבישים כדי למצוא את המסלול האופטימלי.
העדפת הניתוב הזו מספקת את זמן האחזור הגבוה ביותר בתשובה (כלומר, התשובות חוזרות עם העיכוב הארוך ביותר). משתמשים בהעדפת הניתוב הזו כשרוצים לקבל תוצאות באיכות הכי גבוהה, בלי להתחשב במשך הזמן שלוקח לקבל את התשובות.
דוגמה
בדוגמת קוד ה-JSON הבאה אפשר לראות איך מגדירים את העדפת הניתוב בגוף של ישות הודעת בקשה.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }