openfire(1)

openfire是一种在线传输信息的工具,和qq的功能类似。

由于还在进步研究中这里只做简单介绍和初步理解:

1. Openfire最主要的功能是实现XMPP服务器,简单来说,openfire为我们提供一个固定的地址,我们只需要向openfire服务器发送标准的XMPP信息(即XML文件流)

(XMPP协议的传输是通过XML(可扩展标记语言)文件来传输的,并且不是类似于QQ的点对点通讯,而是客户端到服务器再到客户端的方式来实现)

2. Openfire是开源的实时协作服务器(RTC,它是基于公开协议XMPP(也成为Jabber)消息的。

3. Openfire的核心功能可以概括为:连接管理、消息解析、消息路由、消息发送。

4.Openfire客户端有spark, pidgin, Miranda IM, iChat等常用于spark客户端,(当年在日企工作时企业远洋电话交流开会时都会用spark).

 5.Openfire服务器端支持插件开发,如果开发者需要添加新的服务,可以开发出自己的插件后,安装至服务器,就可以提供服务.

openfire数据模型:

1.Openfire的数据库处理采用直接调用JDBC 的方式核心类为org.jivesoftware.database.DbConnectionManager。数据库的处理与业务处理耦合,没有划分出专门的业务逻辑层。

2.ConnectionProvider此类为数据库提供者接口,如需连接mysqlhsqldb等数据库,需首先实现些接口,通常直接调用XXManager中的实例方法,XXManager中又调用的是对应的接口XXProvider的方法,实际操作在该接口的实现类中实现。实现类是动态绑定的(默认的实现类通常命名规则为DefaultXXProvider),在运行时根据ofproperty表中对应配置项值选

3. org.jivesoftware.database.DbConnectionManager,连接管理类

4. org.jivesoftware.util.JiveGlobals,通常用于操作ofproperty表中记录

2.      Apache MINA框架

1)      XMPP协议是基于TCP/IP协议进行传输的,在openfire中,应用了apachemina框架作为NIO框架,简单的来说,openfire服务器用mina框架建立一个简单的服务器,可以接收和发送基本的IO流,然后在此基础上把接收到的IO流解析为XML文件,然后在根据XMPP协议对XML文件进行操作。MINA可以理解为数据传输的中间层。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值