openfire研究之部署连接管理器(connection manager)
http://blog.sina.com.cn/s/blog_7325f5150101bafh.html
一、 Openfire Connection Manager 简介
Openfire Connection Manager 是 Openfire 服务器的扩展,它可以透明的处理大规模并发 XMPP 客户端对 Openfire 服务器的联接。根据 Connection Manager 主页介绍,每个 Connection Manager 可以处理至少五千个并发用户。图 1 表示 Openfire 服务器配置 Connection Manager 后的系统架构。
如图 1 所示, Openfire 服务器可以连接一个或多个 Connection Manager 。每个 Connection Manager 可以处理一个或多个支持 XMPP 的客户端。为 Openfire 配置 Connection Manager 后,支持 XMPP 的客户端仅需要连接 Connection Manager ,由 Connection Manager 负责管理对来自 XMPP 客户端对 Openfire 服务器的连接。
Connection Manager 遵循 GPL 和商业软件许可证这两种许可证。
二、 Openfire 配置
首先需要在 Openfire 上开启 Connection Manager 监听服务,具体流程如下所示
1. 打开 Openfire Admin Console
2. 点击 Server 选项卡下面的 Server Settings 页面
3. 点击右侧的 Connection Managers 页面
4. 选择 Enable 单选按钮以打开 Connection Manager 监听服务
5. 设置 password 。例如, 123 。
通过以上配置,完成了开启 Openfire 监听 Connection Manager 服务。在 Openfire 开启 Connection Manager 监听服务后,下面需要做的是安装和配置 Connection Manager 。
三、 Connection Manager 安装配置
安装和配置 Connection Manager 的步骤如下
1. 选择另一台与 Openfire 不同的服务器
2. 解压下载后的 Connection Manager
3. 修改 conf 目录下的 manager.xml 文件内容。
a) 修改 domain
填写 Openfire 所在的域名:
- <domain>192.168.0.28</domain>
- <port>5262</port>
- <password>123</password>
这里需要填写 Openfire 所在的域名、在 Openfire 中开启的监听端口和在 Openfire 中设置的密码。
这里经过测试,在 domain 项中填写 Openfire 所在的 IP 也是可以通过的。
b )修改 certificate
把 <certificate> 项中将
- <verify>true</verify>
改成
- <verify>false</verify>
配置默认是需要 CA 颁发的证书,比较麻烦。简单的方法是去掉 verify 。
经过以上几个步骤完成了 Connection Manager 的安装和配置。启动 bin/cmanager.sh 或者 cmmanager.bat 。如果配置正确,刷新 Openfire Admin Console 中提及到的页面就可以看到有 Connection Manager 连接。图 3 表示了 openfire 配置了一个 Connection Manager 之后的 Connection Manager Settings 页面。
如图 3 所示,在 Active Connection Managers for server: localhost.localdomain 列表中显示了一个 Connection Manager 的基本信息: Name 为 3cxte , IP 为 192.168.0.240 , Client Sessions 为 0 个。
四、 Client 端配置
本节以配置 Spark 为例,说明支持 XMPP 客户端如何配置到 Connection Manager 。
1. 配置服务器 IP 和端口
2. 主界面填写服务器 IP
3. 填写用户名登录
在用户成功登陆后, 在图 4 所表示的 Connection Manager Settings 页面中显示了有一个用户登录在 192.168.0.240 这个 Connection Manager 上。
如图 4 所示,在 3cxte 这个 Connection Manager 上有一个活跃 Client Sessions 。
五、 参考资料
1. Wildfire Connection Manager 安装配置简介
http://hi.baidu.com/jabber/blog/item/81737b8ddeb22212b21bba52.html
2. Openfire 官方主页
http://www.igniterealtime.org/projects/openfire/index.jsp
3. Connection Manager 官方主页
http://www.igniterealtime.org/projects/openfire/connection_manager.jsp
openfire研究之部署连接管理器(connection manager)的更多相关文章
- SOFA 源码分析 — 连接管理器
前言 RPC 框架需要维护客户端和服务端的连接,通常是一个客户端对应多个服务端,而客户端看到的是接口,并不是服务端的地址,服务端地址对于客户端来讲是透明的. 那么,如何实现这样一个 RPC 框架的网络 ...
- httpclient 连接管理器
连接操作器 连接操作是客户端的底层套接字或可以通过外部实体,通常称为连接操作的被操作的状态的连接. OperatedClientConnection接口扩展了HttpClientConnection接 ...
- 在SSIS 的 64 位版本中不支持 Excel 连接管理器[转]
Microsoft sql server 2008 R2——> SQL SERVER Business Intelligence Development Studio 使用EXCEL数据源或目标 ...
- 在SSIS 的 64 位版本中不支持 Excel 连接管理器
Microsoft sql server 2008 R2——> SQL SERVER Business Intelligence Development Studio 使用EXCEL数据源或目标 ...
- SSIS包的组建之连接管理器
上一篇我们通过一个示例来介绍一下SSIS 包的开发.接下来的内容我们将学习一下包中各个选项卡的使用.如:连接管理器选项卡.控制流选项卡.数据流选项卡和事件处理选项卡等等.这一篇将介绍一下连接管理器作用 ...
- 微软开放技术发布开源的微软云服务器底盘管理器 (Chasis Manager) 软件
发布于 2014-07-14 作者 陈 忠岳 今天,微软公司加入开放计算项目(OCP),贡献出硬件和软件规范,管理 API 和协议,机械 CAD 模型,以及电路板文件和 Gerbers(描述印刷 ...
- Python上下文管理器(context manager)
上下文管理器(context manager)是Python2.5开始支持的一种语法,用于规定某个对象的使用范围.一旦进入或者离开该使用范围,会有特殊操作被调用 (比如为对象分配或者释放内存).它的语 ...
- TCP连接管理(TCP Connection Management)
在最近的求职面试过程中,关于"建立TCP连接的三次握手"不止一次被问到了,虽然我以前用同样的问题面试过别人,但感觉还是不能给面试官一个很清晰的回答.本文算是对整个TCP连接管理做一 ...
- tomcat源码阅读之session管理器(Manager)
一.UML图分析: (一) Session: Session保存了一个客户端访问服务器时,服务器专门为这个客户端建立一个session用来保存相关的会话信息,session有一个有效时间,这个时间默认 ...
随机推荐
- 并行任务task
http://msdn.microsoft.com/zh-cn/library/dd537609(v=vs.110).aspx http://www.cnblogs.com/yangecnu/p/So ...
- win7 下面使用任务计划程序执行php脚步
1.操作系统中点击开始->所有程序->附件->系统工具->任务计划程序 2.如下图 3.下一步,如图: . 4.下一步,如图 5.下一步,如下图: 6.这样设置好以后,就可以了 ...
- 使用Jquery UI 高仿百度搜索下拉列表功能
最近项目有个需求,在新添加商户的时候,用户输入商户名称后,如果系统中有类似的商户名称,直接显示出来,如下图的效果: 实现这个功能,直接使用了JQuery UI 插件 目前我使用的实现版本是: 网友可以 ...
- CodeSmith 模版
<%@ CodeTemplate Language="C#" TargetLanguage="C#" Src="" Inherits= ...
- LINQ 操作符
using System; using System.Collections.Generic; using System.Text; using System.Linq; namespace LinQ ...
- dir_colors linux颜色配置
在控制台下,用ls,就会发现,shell将不同类型的文件项目显示为不同的颜色.者可以提高效率,不用ls -l便能大概的把各个文件的类型情况了解一下. 你有没有想过更改这个着色配置呢? 其实,在/etc ...
- 类 的重载(Overloads)与隐藏(Shadows)
我在上篇文章中讲解了类 的继承和重写,如果想要在派生类中重写基类了方法或函数,那首先基类必须要有用 Overridable 关键字的公开声明的方法或函数,这样,基类的派生类才能用 Overrides ...
- MySQL server has gone away报错
1.最近做插入数据库,然后一直报一个错.mysql server has gone away.(如下图) 查了好多资料,终于解决了.. 1.可能是连接超时..进入php.ini,修改wait_time ...
- ORACLE 绑定变量用法总结 .
之前对ORACLE中的变量一直没个太清楚的认识,比如说使用:.&.&&.DEIFINE.VARIABLE……等等.今天正好闲下来,上网搜了搜相关的文章,汇总了一下,贴在这里,方 ...
- microwindows Win32 API demo
初次使用microwindows,资料有限,我也是费了很多功夫才明白.所以记录下来,好帮助那些爱学习的童鞋,另外请大虾们多多指教. 什么是microwindows,什么作用,等背景介绍我就不多说了,因 ...