負載均衡一(髒讀與串號)

2021-10-01 15:52:00 字數 909 閱讀 8333

1、或者用jdk的阻塞佇列linkedblockingqueue

我用過這個阻塞佇列解決過流水號串號問題

和訊息佇列差不多

2、redis提供了簡單的發布訂閱功能,雖然不能和專業的訊息中介軟體比,但如果我們只是簡單的想要使用發布訂閱功能,那麼redis中的發布訂閱更合適不過了,因為它和專業的訊息中間比使用時相對比較簡單。

在redis中訊息的發布者和訂閱者不能直接進行通訊,而是通過頻道來實現的。訊息的發布者將訊息傳送到指定頻道中,而訊息的訂閱者訂閱該頻道後,則會接受到該頻道中所有接收到的訊息。

命令

publish kafka "this is a message" 

publish命令的返回值為該頻道的訂閱數,因為該頻道沒有訂閱者,所以上圖中的**返回值為0。

subscribe命令在執行成功後,命令行會阻塞,隨時等待著新的訊息被傳送。如果此時我們在向該頻道中傳送訊息,則該訂閱會立即返回我們傳送的訊息。

下面我們了解一下訂閱命令的注意事項。

unsubscribe [channel [channel ...]]
查詢訂閱

pubsub channels
pubsub numsub
pubsub numpat
上述內容就是redis中發布訂閱的全部內容,它和專業的訊息中介軟體比例如kafka、rocketmq等。它不支援訊息的堆積及回溯,如果我們在使用發布訂閱功能時,如果可以容忍上述中的缺點,那我們redis中的發布訂閱功能可以優先考慮。

負載均衡(一)

目錄 什麼是負載均衡 負載均衡分類 四層負載均衡 七層負載均衡 實現負載均衡的幾種方式 http重定向負載均衡 dns負載均衡 反向 負載均衡 ip負載均衡 資料鏈路層負載均衡 直接路由 負載均衡演算法 靜態負載均衡演算法 動態負載均衡演算法 使用單機提供的集中式服務,隨著使用者量的增加和業務的劇增...

關於髒讀與唯一約束

sql server 2012 案例 create table dbo.test id int identity,num int,uqno int alter table test add constraint pk test primary key id create unique index i...

負載均衡(一)為什麼需要負載均衡

通常我們專案開發都是在tomcat上完成的,當然這樣是有優點的,比如就是開發簡單,部署簡單,但是單個的tomcat有時候有時候就會有問題,它的容量有峰值,大概在300之間,可以用測試軟體jemeter進行壓力測試。而且如果tomcat出現問題的話,那麼整個專案就會出現故障,這是不可容忍的 單點故障,...