99 兩個時鐘不同步的裝置怎麼通訊?

2021-10-05 19:16:52 字數 339 閱讀 7117

用非同步通訊咯

非同步通訊:通過握手訊號進行通訊,即主模組發出申請訊號,副模組做出應答後通訊的方式。

大致可以分為:

不互鎖 主模組發出申請訊號,稍微等待副模組收到訊號後撤銷申請訊號開始通訊

半互鎖 主模組發出申請訊號,等副模組發出響應訊號後撤銷申請訊號,

副模組稍微等待後撤銷響應訊號 開始通訊

全互鎖 主模組發出申請訊號,等副模組發出響應訊號後撤銷申請訊號,副模組要等主模組撤銷申請訊號後才可以撤銷響應訊號

不互鎖: 主 等 撤

半互鎖:主 有訊號 撤 副 等 撤

全互鎖:主 有訊號 撤 副 等主撤 撤

那些年我們忽略的集群時鐘不同步問題

時鐘指的是伺服器時間,當集群中的各個伺服器之間的時鐘不一致的時候必然會導致一些問題。我們以電商為例,當有三個併發同時請求服務求來下單,請求通過ngnix 分別分發到不同的服務上,而此時伺服器的時間是不一致的,時間如下圖分別為五點,八點和十點,請求處理過程中我們會把伺服器的當前時間當做訂單的建立時間儲...

git log兩個branch的不同

可以通過下面的方法看出兩個branch的不同 git log oneline branch1 branch 2 可以比較出branch1 有的commit 而branch2 沒有。反之既然 git log oneline branch1.branch2 可以比較出branch1 比branch2 多...

Java集合HashSet中的兩個物件怎樣算重複

集合hashset中物件的特點是無序 不允許重複。無序好理解,那麼兩個什麼樣的物件算重複呢?兩個物件重複意味著這兩個物件的內容相同 hashcode 值也相同。1 兩個物件a和b內容相同,表示a.equals b 的值為true。不重寫的話,預設equals 方法是呼叫 進行判斷的,判斷的是兩個物件...