簡體   English   中英

航空公司系統如何防止兩個用戶同時預訂同一個座位?

[英]How does an airline system prevent two users from booking the same seat at the same time?

如果兩個用戶嘗試同時預訂同一個座位,只有一個會成功。 這是如何實現的? 我讀到了鎖定,但請詳細說明如何實現這一點。 鎖定代碼(同步關鍵字)或鎖定數據庫行或約束數據庫或其他東西?

首先,兩個人同時預訂幾乎是不可能的。 即使他們會在完全相同的時間點擊預訂按鈕,他們也會在不同的時間點到達服務器(由於連接、距離……)。

所以這個事件是極不可能的。 一種解決方案是在有人點擊座位並開始預訂過程后立即添加“預訂”。 這可以防止其他用戶在有人預訂時預訂同一個座位。 如果該人沒有預訂座位,您可以再次“解鎖”它。

例如, Eventbrite使用類似的系統。 一旦您點擊get ticket按鈕,他們就會為您預訂門票。 這樣可以確保在您填寫詳細信息時沒有人搶走您的票。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM