2012-11-05 17 views
1

我們必須使用多播的2個節點的Jboss 5簇consiteing,每一件事情正常工作和服務器都能夠發現並作出集羣重型組播流量

但問題是這些服務器會生成大量多播流量,從而影響共享相同網絡的其他服務器的網絡性能。

我是新來的Jboss集羣是否有任何方式使用單播(點到點),而不是多播?或者配置多播,使其對網絡其餘部分沒有問題?你可以參考我的一些文檔,博客文章或simmillar,可以幫助我擺脫這個問題。

回答

0

沒有得到這裏的任何答案,但我們設法通過

在啓動腳本

-Djgroups.udp.ip_ttl=1 

設置以下TTL屬性對於JBoss解決它,這可能是有幫助的人在未來這將限制多播消息的跳數爲1。這不會減少羣集JBoss之間的網絡流量,但會阻止它向外擴散。

如果在由水浸問題影響,則同一子網中的其他服務器 你可能切換到TCP堆棧,做單播,而不是播

-Djboss.default.jgroups.stack=tcp 

還有一些在JBoss中更多的配置文件部署集羣,你應該看看。

server/production/deploy/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml 

和JGroups配置中的其他conf文件。

0

如果組播不是由於某種原因而不能使用的選項,由於網絡拓撲結構,它不起作用,所以我們可以使用單播。

使用單播集羣而不是UDP mcast。打開你的配置文件並查看文件jgroups-channelfactory-stacks.xml並找到名爲「tcp」的堆棧。該堆棧仍然只使用UDP進行多播發現。如果低UDP流量是好的,你不需要改變它。如果它或mcast不起作用,則需要配置TCPPING協議並配置intial_hosts在哪裏查找集羣成員。

之後,您將需要告訴JBoss Cache使用這個堆棧,打開jboss-cache-manager-jboss-beans.xml,其中爲每個緩存定義了一個堆棧。您可以將其從udp更改爲tcp,或者您可以在啓動AS時簡單地使用該屬性,只需添加:

-Djboss.default.jgroups.stack=tcp