当前位置:  软件>java软件

分布式即时聊天服务器 zkfire

    来源:    发布时间:2015-02-04

    本文导语:  zkfire = zookeeper+openfire(3.8.1)     Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议,您可以使用它轻易的构建高效率的即时通信服务器.    根据对xmpp与openfire的理解,我在openfire中相应的地方植入少量的...

zkfire = zookeeper+openfire(3.8.1) 
   Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议,您可以使用它轻易的构建高效率的即时通信服务器. 
  根据对xmpp与openfire的理解,我在openfire中相应的地方植入少量的代码,并把zookeeper包也一并打包到zkfire中。使用zookeeper(http://zookeeper.apache.org/)管理集群中的节点。
  客户登陆集群中的不同服务器进行通信就如登陆同一台服务器一样。
  openfire自身也有一套集群的实现,使用了oracle 的coherence的中间件,使用时要自己加入相应的jar包与集群插件。
  之所以又自己开发了一套集群实现,一个是给集群提供多一些选择,一个是兴趣^_^,让openfire天然就支持集群
  
  zkfire使用的场景:
  zkfire中有zookeeper的服务器监听与客户端连接程序,但可以不依赖自身的zookeeper服务,可以在openfire之外另外开启其他zookeeper服务,此时只需指定
  cluster.xml配置文件中zClient节点的连接地址即可。
  如果只是zookeeper单机服务,那么所有openfire服务器只需要连到同一个zookeeper服务器就可以完成openfire的集群
  如果是zookeeper集群,根据zookeeper的集群特点,集群中节点不应该少于3台。如果超过一半的zk节点宕机,那么整个集群境将不能正常的工作。
  
  使用方法:
  将zkfire.jar包替换lib下的openfire.jar,之所以命名zkfire.jar只是为了易于区分,名字可以随意取。并将cluster.xml放到bin目录下。
  zkfire基于单openfire的实现,所以如果使用的话建议不要开启openfire自身的集群功能。
  在安装的openfire目前bin下,放入cluster.xml文件。
  示例内容如下: 

 
   
       
10.10.152.180:3004
         
    
             2000
             10
             5
             E:/zoo/data
             3181
              10.10.152.180:2888:3888
              10.10.152.185:2888:3888
              10.10.152.189:2888:3888
              1
   
        
     
     127.0.0.1:3181
   

 zoo中的节点server用于配置zookeeper的集群,myid指定本身zookeeper服务器的myid值,server.X 这个数字就是对应myid中的数字,集群中不同zk服务器的myid值不同。
   zoo中其他节点的内容皆对应zk配制文件的键值内容。这里不再详述,可以参考 http://rdc.taobao.com/team/jm/archives/665,但dataDir与clientPort是必须配置,用于指定zookeeper数据文件地址与监听端口。   

有任何问题请随时email给我donnie4w@gmail.com


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 分布式CAP理论介绍:一致性(Consistency),可用性(Availability),容忍网络分区(Partition tolerance)
  • 不太明白,利用RMI实现JAVA分布式应用 和 EJB实现JAVA分布式应用有什么区别。
  • 如何实现 coreos 下Docker 与分布式数据库结合
  • 什么是分布式?
  • FastDFS分布式文件系统介绍和FastDFS的安装配置过程
  • 分布式版本控制系统 Mercurial
  • 高性能分布式哈希表FastDHT介绍及安装配置
  • 分布式文件系统 XtreemFS
  • 分布式系统的故障独立性如何理解
  • 请推荐一下轻量级的分布式文件系统源码哈
  • 分布式缓存测试框架 RadarGun
  • 分布式系统治理 JBoss Overlord
  • 分布式流处理框架 Samza
  • 分布式工程配置zookeeper化 zkconfigutil
  • 分布式系统基础架构 Hadoop
  • 分布式版本控制系统 Monotone
  • 来抢分:什么是分布式系统开发
  • 分布式系统的延迟和容错库 Hystrix
  • Clojure 分布式状态模型 Avout
  • 分布式K/V存储系统 kumofs
  • 分布式 Linux 软件管理系统 Conary


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3