我有一个场景,我从客户那里收到了出租车请求,然后我向多个司机发送了取货请求。现在想象一下,如果两个收到请求的司机同时点击“接受”按钮,那么哪个司机会搭车。
我有一个包含ride_id、driver_id、已完成(布尔)列的乘车表。
到目前为止,我正在做的是在点击“接受”按钮后立即调用 API。此 GET 请求 API 检查行程是否已完成。如果是,我会向司机显示一条消息,说乘车已经完成,否则我会点击另一个 POST API 请求,它将 DB 中的已完成值更新为 true,并更新 driver_id。
现在进入我们的场景,当两个驱动程序同时点击“接受”时,将发出两个 GET 请求,并且两者都将得到“未完成”作为响应,此后两者都将发送一个 POST 请求。现在我很困惑谁的数据将在数据库中更新。
我在后端使用 PHP 和 MYSQL 作为数据库。