最近要處理一個辦事大廳的重號問題:
大廳接待多個部門的不同型別業務,用戶需要先去人工視窗或者自助機上掛號登記并取得業務號,然后根據呼叫依次辦理業務,早期大廳取號只有一個人工視窗,掛號臺直接從資料庫中獲取各業務部門的最大業務號然后加1生成當前號給用戶,由于掛號端只有一個,所以一直沒有重號出現,現在整改后,辦事部門增多,來辦事的人更多,所以就增加了多個人工掛號視窗和自助掛號終端。這樣就出現同一時間不同終端在給同一業務派號時就參生了重號。
現在需要解決該問題,自己的思路是: 自己做一個專門負責管理業務號的服務程式,然后各終端都到該服務程式來獲取業務號。實作方式就是用TCP/IP協議來做。提供DLL庫給和掛號終端呼叫。DLL庫中提供與管理業務號的服務程式通信的介面函式。
不知道我這個思路行了行?大家有沒有其它方案可建議,或者有相關資料實體提供,感謝。
uj5u.com熱心網友回復:

不難吧。關鍵看那個取號機 是什么系統 語言開發的。怎么方便怎么來。
思路就是取號機 都網路訪問 一臺生成計數器服務器 。感覺http介面實作簡單的一批。
uj5u.com熱心網友回復:
用鎖就解決了uj5u.com熱心網友回復:
可能用資料庫的方式可能更好, 跨平臺及系統兼容性可能會更強, 而且有問題的時候容易除錯uj5u.com熱心網友回復:
用鎖不行吧,你鎖了其它視窗怎么用這個表?
uj5u.com熱心網友回復:
你是不是對鎖有什么誤解
uj5u.com熱心網友回復:
資料同步,鎖就OK了吧uj5u.com熱心網友回復:
要什么鎖,每個業務各自獨立的佇列就可以了uj5u.com熱心網友回復:
從場景看沒必要自己寫一套通信 可以直接用多終端(包括人工視窗的取號終端)連DB用一張表記錄每種業務的ID/辦事序號的最大號碼,每行一種業務
用資料庫自帶的行級鎖(各個業務相互獨立)或表級鎖都可以保護多終端取號的情況
表級鎖也不要緊 寫入速度非常快 一個大廳里多不過幾百用戶 根本不會感知到卡頓
uj5u.com熱心網友回復:
服務器接收到請求以后,將請求排隊,FIFO~轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/8943.html
標籤:網絡編程
