排查常见问题

如果您遇到任何问题,请查看以下部分以获取帮助。

Fleet Engine 中的状态丢失

在使用 Fleet Engine 时,请设计实现方案以应对故障。例如,如果您向 Fleet Engine 发出更新车辆的请求,它可能会返回错误,指明车辆不存在。然后,您的实现方案应以新状态重新创建车辆。

在极不可能发生的 Fleet Engine 灾难性故障情况下,您可能需要重新创建大部分或所有车辆和任务。如果创建速率过高,某些请求可能会因配额问题而再次失败,因为系统会进行配额检查以避免拒绝服务攻击 (DOS)。在这种情况下,请使用重试退避策略来降低重新创建速率。

重试

请确保您的系统针对 Fleet Engine 请求实现重试,因为这些请求可能会偶尔失败。Fleet Engine 客户端库默认会发出重试。

司机应用中的状态丢失

如果司机应用崩溃,该应用必须在 Driver SDK 中重新创建当前状态。该应用应尝试重新创建任务,以确保任务存在并恢复其当前状态。该应用还应重新创建并明确设置 Driver SDK 的停靠点列表。

注意:这些恢复操作必须自主完成,而无需依赖 Fleet Engine 中的信息,但指明实体是否已存在于数据库中的错误除外。如果实体已存在,则可以吸收该错误,并使用其 ID 更新该实体。