zk集群特點
集群中只要有超過半數的機器是正常工作的,那麼整個集群對外就是可用的;
也就是說如果有2個zookeeper,那麼只要有1個故障了,zookeeper就不能用了,因為1沒有過半,所以2個zookeeper不是高可用的,因為不能容忍任何一台發生故障;
同理,要是有3個zookeeper,乙個故障了,還剩下2個正常的,過半了,所以3個zookeeper才是高可用的,因為能容忍1臺發生故障;
如果是4臺呢?5臺呢?6臺呢?1,2,2;所以從資源利用率來看,應該選擇使用奇數臺
zk集群配置
3個zookeeper中conf目錄下的zoo_sample.cfg複製乙份,改為zoo.cfg並配置:
datadir=/opt/cluster/apache-activemq/zkdata1/
clientport=2181
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890
其中2888埠號是zookeeper服務之間通訊的埠,3888是zookeeper與其他應用程式通訊的埠;
3. 建立三個datadir目錄
/opt/cluster/apache-activemq/zkdata1/
/opt/cluster/apache-activemq/zkdata2/
/opt/cluster/apache-activemq/zkdata3/
每個目錄中都建立乙個名為myid的檔案,3個檔案的內容分別寫1、2、3;
這個1、2、3是對應前面server.1、server.2、server.3
dubbo的配置
zookeeper:
分布式 分布式鎖
本質是利用redis的setnx 方法的特性來加鎖,setnx 即key不存在則設定key,否則直接返回false,要求在分布式系統中使用同乙個redis服務,以下提供兩種解決方案 1 直接使用redistemplate 這其實並不能完全保證高併發下的安全問題,因為可能在鎖過期之後該執行緒尚未執行完...
分布式 分布式事務
是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...
分布式之分布式事務
被人問到分布式事務,之前學rabbitmq 的時候學到過rabbitmq 高階的事務,因為沒有用過,所有沒有回答好。這裡總結一下。1.單機版事務。事務的四大特性 acid a.原子性 b.一致性 c.隔離性 d.永續性 單機事務可以通過設定事務的隔離級別 參見spring 的事務隔離級別 2.分布式...