일반적인 문제 해결
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
문제가 발생하면 다음 섹션에서 도움을 받으세요.
Fleet Engine의 분실 상태
Fleet Engine으로 작업할 때는 장애를 예상하여 구현을 설계하세요. 예를 들어 Fleet Engine에 차량 업데이트를 요청하면 차량이 존재하지 않는다는 오류로 응답할 수 있습니다. 그러면 구현에서 새 상태로 차량을 다시 만들어야 합니다.
Fleet Engine에 심각한 장애가 발생하는 극히 드문 경우 대부분 또는 모든 차량과 작업을 다시 만들어야 할 수 있습니다. 생성률이 너무 높아지면 서비스 거부 (DOS) 공격을 방지하기 위해 할당량 검사가 진행되므로 할당량 문제로 인해 일부 요청이 다시 실패할 수 있습니다. 이 경우 재시도를 위한 백오프 전략을 사용하여 재생성 속도를 늦춥니다.
재시도
시스템에서 Fleet Engine에 대한 요청을 재시도해야 합니다. 요청이 가끔 실패할 수 있기 때문입니다. Fleet Engine 클라이언트 라이브러리는 기본적으로 재시도를 실행합니다.
운전자 앱에서 상태가 손실됨
드라이버 앱이 비정상 종료되면 앱은 드라이버 SDK 내에서 현재 상태를 다시 만들어야 합니다. 앱은 작업이 존재하고 현재 상태를 복원하도록 작업을 다시 만들어야 합니다. 또한 앱은 Driver SDK의 정류장 목록을 다시 만들고 명시적으로 설정해야 합니다.
참고: 이러한 복원은 데이터베이스에 항목이 이미 있는지 여부와 시기를 나타내는 오류를 제외하고 Fleet Engine의 정보에 의존하지 않고 자율적으로 실행해야 합니다. 항목이 이미 있는 경우 오류를 흡수하고 ID를 사용하여 항목을 업데이트할 수 있습니다.
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-08-31(UTC)
[null,null,["최종 업데이트: 2025-08-31(UTC)"],[[["\u003cp\u003eFleet Engine implementations should be designed to handle failures and potential data loss by recreating vehicles and tasks when necessary.\u003c/p\u003e\n"],["\u003cp\u003eIn case of Fleet Engine failures, use a backoff strategy to manage the recreation rate and avoid quota issues.\u003c/p\u003e\n"],["\u003cp\u003eImplement retries for Fleet Engine requests to address occasional failures, leveraging client library defaults or custom mechanisms.\u003c/p\u003e\n"],["\u003cp\u003eDriver apps should autonomously restore state after crashes by recreating tasks and stops within the Driver SDK, relying on error handling for existing entities.\u003c/p\u003e\n"]]],["Implement error handling for Fleet Engine failures, such as vehicle non-existence, by recreating entities. In catastrophic failures, recreate vehicles and tasks, using a backoff strategy if quota issues arise. Implement request retries, as provided by Fleet Engine client libraries. If the driver app crashes, autonomously recreate tasks and stop lists within the Driver SDK, relying only on Fleet Engine errors to determine if entities already exist for update purposes.\n"],null,["# Troubleshoot common issues\n\nCheck the following sections for help if you experience any issues.\n\nLost state in Fleet Engine\n--------------------------\n\nWhen working with Fleet Engine, design your implementation to anticipate\nfailures. For example, if you issue a request to Fleet Engine to update a\nvehicle, it might respond with an error indicating that the vehicle does not\nexist. Your implementation should then recreate the vehicle in the new state.\n\nIn the extremely unlikely scenario of a catastrophic failure of Fleet Engine,\nyou may need to recreate most or all vehicles and tasks. If the creation rate\nbecomes too high, some requests may fail again due to quota issues since quota\nchecks are in place to avoid denial of service (DOS) attacks. In this case, slow\ndown the recreation rate using a backoff strategy for reattempts.\n\n### Retries\n\nBe sure your system implements retries for requests to Fleet Engine since they\nmight fail occasionally. Fleet Engine client libraries issue retries by default.\n\nLost state in the driver app\n----------------------------\n\nIf the driver app crashes, the app must recreate the current state within the\nDriver SDK. The app should attempt to recreate tasks to ensure that they exist\nand to restore their current states. The app should also recreate and explicitly\nset the list of stops for the Driver SDK.\n\n**Note**: These restorations must be done autonomously without relying on\ninformation from Fleet Engine, other than errors indicating if and when an\nentity already exists in the database. If an entity does already exist, then\nthat error can be absorbed and the entity can be updated using its ID."]]