Chỉ định cách thức và liệu có nên bao gồm dữ liệu lưu lượng truy cập hay không

Các lựa chọn ưu tiên về giao thông mà bạn chọn sẽ giúp cân bằng độ chính xác của thông tin tuyến đường với hiệu suất của yêu cầu. Khi đưa ra yêu cầu, bạn nên cân nhắc xem yêu cầu đó có phù hợp không sẽ tốt hơn khi trả về kết quả chính xác nhất có thể hoặc trả về kết quả dưới dạng nhanh nhất có thể. API Tuyến đường cung cấp các tuỳ chọn cho phép bạn kiểm soát chất lượng dữ liệu phản hồi so với độ trễ của phản hồi.

Đặt mức dữ liệu lưu lượng truy cập

API Tuyến đường cung cấp RoutingPreference (REST) và RoutingPreference (gRPC) cho phép bạn chỉ định các lựa chọn ưu tiên về định tuyến để tính toán các tuyến đường. Các các lựa chọn ưu tiên khác nhau ở mức độ mà chúng tính đến điều kiện lưu lượng truy cập vào tính toán tuyến đường. Mỗi tuỳ chọn định tuyến sẽ tạo ra kết quả khác với liên quan đến chất lượng tuyến đường, thời gian đến dự kiến và độ trễ phản hồi.

Tình trạng giao thông đặc trưng cho tốc độ lưu lượng giao thông. Ví dụ:

  • Khi không có tắc nghẽn, tình trạng giao thông được coi là bình thường và luồng giao thông ở tốc độ không bị cản trở như bình thường.
  • Đang đến gần giờ cao điểm, mật độ giao thông tăng, khiến giao thông đến giảm tốc độ, tạo ra tình trạng giao thông từ nhẹ đến trung bình.
  • Trong lưu lượng truy cập từ quảng cáo đệm đến đoạn quảng cáo đệm, lưu lượng truy cập bị gián đoạn, tạo ra tình trạng giao thông.

Không nhận biết được lưu lượng truy cập

Khi bạn đặt lựa chọn ưu tiên về định tuyến TRAFFIC_UNAWARE, các tuyến đường sẽ được tính toán mà không tính đến tình trạng giao thông hiện tại. Lựa chọn ưu tiên về định tuyến này cung cấp độ trễ phản hồi thấp nhất (phản hồi được trả về nhanh nhất).

TRAFFIC_UNAWARE là chế độ cài đặt mặc định.

Trong câu trả lời:

  • ETA có trong thuộc tính phản hồi duration.

  • Các thuộc tính phản hồi durationstaticDuration chứa cùng một thuộc tính giá trị.

Sử dụng tuỳ chọn định tuyến này khi bạn muốn phản hồi được trả về nhanh nhất và thông tin định tuyến ước chừng vẫn đủ chính xác.

Nhận biết lưu lượng truy cập

Khi bạn đặt lựa chọn ưu tiên về định tuyến TRAFFIC_AWARE, các tuyến đường sẽ được tính toán có tính đến tình hình giao thông hiện tại. Do đó, tuyến đường và tuyến đường các thông tin đó phản ánh chính xác hơn tình hình thực tế. Bởi vì sự gia tăng này trong chất lượng dữ liệu sẽ đánh đổi bằng độ trễ phản hồi, việc tối ưu hoá hiệu suất được áp dụng để giảm nhiều độ trễ.

Trong câu trả lời:

  • ETA có tính đến lưu lượng truy cập theo thời gian thực nằm trong Thuộc tính phản hồi duration.

  • Thuộc tính phản hồi staticDuration chứa thời gian di chuyển trên tuyến đường mà không tính đến tình trạng giao thông.

Hãy sử dụng tùy chọn định tuyến này khi bạn muốn thông tin định tuyến chính xác hơn TRAFFIC_UNAWARE, nhưng bạn không ngại nếu phản hồi được trả về kèm theo độ trễ tăng vừa phải.

Tối ưu hoá khả năng nhận biết lưu lượng truy cập

Khi bạn đặt lựa chọn ưu tiên về định tuyến TRAFFIC_AWARE_OPTIMAL, các tuyến đường sẽ được tính toán cho điều kiện giao thông hiện tại, nhưng không có hiệu suất tối ưu hoá. Ở chế độ này, máy chủ sẽ thực hiện toàn diện hơn tìm kiếm mạng lưới đường để tìm tuyến đường tối ưu.

Lựa chọn ưu tiên định tuyến TRAFFIC_AWARE_OPTIMAL tương đương với chế độ mà maps.google.com và thông qua Ứng dụng di động Google Maps.

Khi sử dụng tùy chọn này với Ma trận tuyến tính, số lần các phần tử trong yêu cầu (số nguồn gốc × số lượng đích) không được vượt quá 100. Để biết thêm thông tin về giới hạn của ma trận tuyến tính, hãy xem Tính toán ma trận lộ trình.

Trong câu trả lời:

  • ETA có tính đến lưu lượng truy cập theo thời gian thực nằm trong Thuộc tính phản hồi duration.

  • Thuộc tính phản hồi staticDuration chứa thời gian di chuyển trên tuyến đường mà không tính đến tình trạng giao thông.

Tuỳ chọn định tuyến này có độ trễ phản hồi cao nhất (tức là phản hồi trả về với độ trễ dài nhất). Sử dụng lựa chọn ưu tiên về định tuyến này khi bạn muốn có kết quả có chất lượng cao nhất, không quan tâm đến thời gian phản hồi.

Hiệu quả của việc đặt thời gian khởi hành

Bạn có thể sử dụng thuộc tính departureTime để đặt thời gian khởi hành cho . Nếu bạn không đặt thuộc tính departureTime thì thuộc tính này sẽ được đặt thành khi bạn đưa ra yêu cầu.

  • Đối với TRAFFIC_UNAWARE, bạn không thể đặt departureTime vì lựa chọn tuyến đường và thời lượng đều dựa trên mạng lưới đường bộ và không phụ thuộc vào thời gian trung bình tình trạng giao thông.

  • Đối với TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL, sử dụng giao thông trực tiếp xem xét một số điều kiện cụ thể, thì lưu lượng truy cập trực tiếp đóng vai trò quan trọng hơn gần với departureTime hơn. Bạn đặt thời gian khởi hành càng xa trong tương lai, thì chúng tôi sẽ xem xét kỹ hơn đến lưu lượng truy cập trước đây .

Ví dụ về lựa chọn ưu tiên định tuyến cho chế độ cài đặt

Mã JSON sau đây minh hoạ cách đặt tuỳ chọn định tuyến trong một phần nội dung của thực thể thông báo yêu cầu.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

Định cấu hình lưu lượng truy cập trên nhiều đường

API Tuyến đường cho phép bạn yêu cầu thông tin về tình trạng giao thông dọc theo một hình nhiều đường nhận biết lưu lượng truy cập. Xem Yêu cầu hình nhiều đường để biết thêm thông tin.