隨筆-95  評論-31  文章-10  trackbacks-0
          測試機4臺
          1.四臺機器都安裝openfire,隨即一臺安裝mysql,執行openfire_mysql.sql腳本。
          2.四臺機器都配置到同一個mysql機器上(不能使用openfire內嵌的數據庫),使用同一個域名。
          3.四臺機器都安裝插件,Hazelcas就是openfire_3.8版本以后自己的集群插件(也是個開源集群插件,摒棄了oracle的商業收費集群插件),broadcast插件是為了集群廣播通知5701端口使用(如果使用udp廣播方式,也不可以不安裝該插件使用tcp-ip方式),并使四臺機器開放5701端口。
             具體開放端口命令見http://www.aygfsteel.com/liuguly/archive/2013/07/18/401701.html
          4.四臺機器都編輯openfire/plugins/hazelcast/classes/hazelcast-cache-config.xml 文件
          <join>
              
          <multicast enabled="false"/>
              
          <tcp-ip enabled="true">
                
          <hostname>ip:5701</hostname>
                
          <hostname>ip:5701</hostname>
                <hostname>ip:5701</hostname>
                <hostname>ip:5701</hostname>
             
          </tcp-ip>
              
          <aws enabled="false"/>
          </join>

          5.四臺機器重啟openfire,然后使clustering  Enabled,即可看到集群部署成功

          posted on 2013-07-25 15:40 朔望魔刃 閱讀(9893) 評論(17)  編輯  收藏 所屬分類: 即時通信

          評論:
          # re: openfire_3.8.2集群配置 2013-07-26 17:27 |
          這3.8.2版的openfire的源碼中hazelcast包下報錯,怎么解決?  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2013-10-31 15:11 | 綠野暝
          請問下集群中各個節點上登錄的用戶session不是共享的么?我現在也是配置了三個節點,共用一個mysql數據庫,不同節點上的用戶也可以通信,但是如果一個節點掛掉后,這個節點上面的用戶連接就全斷了,需要重連正常服務的節點,這個問題怎么解決呢?  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-01-04 09:11 | QQ:1468155080
          @綠野暝


          同問,這個問題后來解決了么?  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-01-08 12:56 | nodexy
          @綠野暝

          這個問題在Openfire的這種集群模式下是解決不了的,不只是session共享解決的問題。

          如果想達到單個節點掛掉而客戶端不感知的話,需要額外再加一層接入層,專門處理客戶端的連接,然后后端跟openfire集群保持連接,session共享。

          其實用戶接入層也還是有掛掉的可能。  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-03-03 15:32 | Lou
          客戶端是怎么登錄的呀, 2個客戶端指定各自指定服務器ip嗎? 那如果是外網的話。對外只有一個ip的怎么辦呀? 樓主,求解  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-03-24 22:52 | getingbin
          centos5.8X64位服務器3臺jdk-7u51-linux-x64.tar.gzopenfire_3_9_1.tar.gz
          broadcast.jar
          hazelcast.jar
          mysql已經安裝的服務器一臺(本文重點是openfire的集群配置,所以設定mysql已經安裝完畢)
          用這2個插件做集群,總是最后一步,點Enable之后,瀏覽器就轉啊轉,log也不報錯!邪門了!  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-03-24 22:52 | getingbin
          我的QQ:4798807829@getingbin
            回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-04-10 12:48 | hsthink
          @綠野暝
          這個問題還是用系統集群來解決吧!  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-04-10 12:50 | hsthink
          @Lou
          用cm吧!  回復  更多評論
            
          # re: openfire_3.8.2集群配置[未登錄] 2014-04-15 16:50 | fly
          使clustering Enabled 的時候報錯?。?br>
          16:48:26,520 ERROR Log:276 - Unable to start clustering - continuing in local mode
          (Wrapped: Failed to load the factory)
          java.lang.reflect.InvocationTargetException
          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

          Caused by: java.lang.NullPointerException
          at com.jivesoftware.util.cache.ClusterClassLoader.getResource(ClusterClassLoader.java:79)
          at com.tangosol.util.Resources.findResource(Resources.java:130)
          at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfigAsResource(DefaultConfigurableCacheFactory.java:367)
          at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfig(DefaultConfigurableCacheFactory.java:337)
          at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfig(DefaultConfigurableCacheFactory.java:309)
          at com.tangosol.net.DefaultConfigurableCacheFactory.<init>(DefaultConfigurableCacheFactory.java:137)
          ... 55 more

          求助??!  回復  更多評論
            
          # re: openfire_3.8.2集群配置[未登錄] 2014-06-04 09:35 | hujh
          我用3.9.3 集群做不起來,請問你是怎么配置的?  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-06-05 17:46 | suber
          我的openfire集群后,不同節點的用戶不能正常通信,這是什么原因啊?求大神解答一下啊。@綠野暝
            回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-06-11 13:42 | 朔望魔刃

          @Lou
          openfire走的是TCP/IP下的xmpp協議,需要前端加支持TCP/IP協議的負載均衡,用haproxy就可以了,客戶端全部連接haproxy  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-06-11 13:50 | 朔望魔刃
          @suber
          既然都集群了,我就默認你集群配好了,不同節點的用戶不能正常通信
          1:查找集群的openfire配置的是不是同一個數據庫,集群的各個openfire的用戶是不是一致,簡單來說就是在不在同一張表。
          2:不同節點間的用戶不能通信,你得確認openfire之間是否可以通信,ping的通,自己寫測試方法就能測出來,openfire默認通信端口是5222,還有集群之間的通信響應端口,你得確認是否開放了,不同linux下需設置開放端口  回復  更多評論
            
          # re: openfire_3.8.2集群配置 2014-06-11 14:00 | 朔望魔刃
          @綠野暝
          集群的目的:就是增大服務的計算能力以及處理能力,加集群一般都會在前端加負載均衡,負載均衡對客戶端來說是不變的,所以其中一個集群節點掛了,不會影響其他服務,仍然可以給客戶端提供服務,但是掛的這一臺的用戶就要重新連接了,因為openfire基本上都是長連接,最多能替你保存緩存內容,但是長連接已經掛了,就好比這條路已經被堵死了,所以必須得客戶端控制、管理重連以及心跳,還有一些異常處理的機制。心跳和重連這一塊對手機通信至關重要,處理不好,消息可能就會收不到,導致很多問題  回復  更多評論
            
          # re: openfire_3.8.2集群配置[未登錄] 2014-12-15 17:00 | wp
          hazelcast-cache-config.xml 文件每一臺都要配4行ip嗎  回復  更多評論
            
          # re: openfire_3.9.3集群配置 2015-04-08 14:06 | openfre
          我這根本就不顯示hazelcast 這個插件包。請教下各位大神。  回復  更多評論
            
          主站蜘蛛池模板: 甘孜| 玛沁县| 佛冈县| 监利县| 嘉定区| 丹棱县| 元朗区| 秀山| 榆社县| 兴和县| 宁陵县| 新泰市| 宁明县| 阿拉善左旗| 揭东县| 鱼台县| 奉新县| 探索| 岗巴县| 兴宁市| 旌德县| 尖扎县| 岱山县| 比如县| 外汇| 博客| 赤城县| 随州市| 茂名市| 雷波县| 白水县| 亚东县| 嘉黎县| 玛多县| 吴旗县| 西峡县| 永济市| 巴马| 濮阳县| 慈溪市| 和平区|