分布式任务调度框架hanzelcast使用
生活随笔
收集整理的這篇文章主要介紹了
分布式任务调度框架hanzelcast使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
Hazelcast是一個高度可擴展的數據分發和集群平臺,提供java.util.{Queue, Set, List, Map}分布式實現及其它特性。 可以作為 a.服務啟動: 假設在兩臺可以通信的服務器A,B上部署hazelcast. 在A,B兩臺機器上啟動hazelcast服務作為兩個server節點, 當一臺服務器down掉時,另一臺機器繼續提供服務,因為兩個server節點含有相同的共享數據。 cd /a/b/c/hazelcast/bin nohup ./server.sh > server_node_1.log 2>&1 & nohup ./server.sh > server_node_2.log 2>&1 &
server.sh腳本如下,在源碼的bin目錄下 #!/bin/sh
java -server -Xms1G -Xmx1G -Djava.net.preferIPv4Stack=true -cp ../lib/hazelcast-2.1.2.jar com.hazelcast.examples.StartServer
b.監控配置(hazelcast項目提供了監控系統使用情況的war包) 1.拷貝war包: 在\hazelcast-2.1.2目錄下有一個mancenter.war包,直接將這個包拷貝到apache-tomcat-6.0.33\webapps目錄下 開發過程中將此war包放在C機器(A,B,C三臺機器可以互相通信),/a/b/c/apache-tomcat-6.0.33/webapps目錄下 2.啟動tomcat,查看服務是否啟動: 執行/sbin/ifconfig命令,查看tomcat所在目錄的ip地址,16.12.23.34,如果windows可以ping這個地址, 可以在windows中打開一個瀏覽器訪問這個地址,查看服務是否啟動成功。(端口默認8080) 開發環境中,訪問http://16.12.23.34:8080/mancenter連接查看hazelcast使用情況。 3.第二步服務啟動正常,證明war本身可用,現在將這個監控地址加到所有的server節點啟動所讀的配置文件hazelcast.xml上 將tomcat所安裝機器的ip寫在hazelcast-2.1.2\bin\hazelcast.xml的配置上,監控所有server節點: <management-center enabled="true">http://16.12.23.34:8080/mancenter</management-center> 這樣每個server節點的行為都會發送到配置的地址上。
c.客戶端程序設計 可以每個線程啟動一個客戶端,在A上啟動十個線程,訪問自身的A的server節點, 在B上啟動十個線程,訪問自身的B的server節點,,當一個server節點down的時候,客戶端自動訪問另一個server節點。 客戶端啟動(源碼自帶的測試代碼): 在A或B上,cd /a/b/c/hazelcast/bin ./client.sh connect 16.12.23.34 16.12.23.35ip是B的機器。 >輸入help命令,查看使用方法,這些方法也是開發人員寫的測試方法,在開發程序的時候可以參考。 例如q.offer pitt q.poll就會得到pitt字符串。
其他: 如果一個client端去嘗試連接一個down掉的server節點會報錯。 如果一個client已經成功連接上一個server節點,假設這個server節點down掉,但是還有其他幾點正常工作,client會自動連接正常server節點繼續運行。 hazelcast提供了免費監控兩個server節點的war包,監控兩個以上server節點需要購買licence.
參考: http://www.oschina.net/p/hazelcast http://www.hazelcast.com/
轉載于:https://my.oschina.net/forrest420/blog/63749
總結
以上是生活随笔為你收集整理的分布式任务调度框架hanzelcast使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一位前辈工程师职业发展的忠告
- 下一篇: 将访问的文件夹变为磁盘盘符-摘自网络