/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
/中文/
JGroups是一個可靠的群組通信的Java庫,它由三部分組成,類似套接字的API,用於應用開發,協議棧,實現可靠的溝通,以及一套構件,給人以開發者高層次的抽象(例如ReplicatedHashMap,一個高級的抽象,java.util.Map的實現)。
JGroups是一個開源的純java編寫的可靠的群組通訊工具。其是一個可靠的組播通訊工具集(需要說明的是,這並不是說必須要使用IP Multicast,JGroups也可以使用TCP來實現)。其工作模式基於IP多播,但可以在可靠性和群組成員管理上進行擴展。其結構上設計靈活,提供了一種靈活兼容多種協議的協議棧,對於每個產品都有不同的可靠性需求。這種協議棧可以讓用戶定義的自己可靠性指標和性能指標。JGroups可以用來創建一個組,這個組中的成員可以給其他成員發送消息。
JGroups 配置
PING: 發現初始成員
MERGE2: 將網絡層切分的包重新合並。
FD_SOCK: Failure Dectection 錯誤檢測,基於TCP
FD:Failure Dectection 錯誤檢測,基於心跳
VERIFY_SUSPECT: 檢查貌似失敗的節點
pbcast.NAKACK: 應答,提供可靠傳輸
UNICAST: 可靠的UNICAST
pbcast.STABLE: 計算廣播信息是否穩定
VIEW_SYNC: 定期廣播view(成員名單)
pbcast.GMS: Group membership, 處理joins/leaves/crashes等
FC: 流量控製
FRAG2:Fragmentation layer,分包,將大的數據包分拆成適合網絡層傳輸
JGroups的可靠性體
對所有接收者的消息的無丟失傳輸(通過丟失消息的重發)
大消息的分割傳輸和重組
消息的順序發送和接收
原子性:消息要麼被所有接收者接收,要麼全不
JavaGroups的成員關係管理體現在
可以知道組內有哪些成員
成員的加入,離開,掉線等的通知
JGroups的可靠性體現在:
1、對所有接收者的消息的無丟失傳輸(通過丟失消息的重發)
2、大消息的分割傳輸和重組
3、消息的順序發送和接收
4、原子性:消息要麼被所有接收者接收,要麼全不
JavaGroups的成員關係管理體現在:
1、可以知道組內有哪些成員
2、成員的加入,離開,掉線等的通知
JavaGroups的主要功能特征:
1、組的創建與刪除。組成員能在LAN或WAN環境內互相發送消息
2、組的成員加入或離開
3、組成員的檢測和通知:加入,離開,掉線
4、檢測與移除已掉線的成員
5、消息的組播 (member-to-group或point-to-multipoint)
6、消息的點對點發送 (member-to-member或point-to-point)
7、支持UDP (IP Multicast), TCP, JMS等傳輸協議
8、免費開放源代碼