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有一个有效时间,这个时间默认 ...
随机推荐
- 04747_Java语言程序设计(一)_第1章_Java语言基础
二进制0b开头 八进制0开头 十六进制0x开头 package com.jacky; public class Aserver { public static void main(String arg ...
- 如何在美国公司写project plan 邮件--以hadoop安装和Mahout数据分析为例子
Hi, XXX (boss name) Project Title: Hadoop installation and Data analysis based on Mahout Deliverabl ...
- Session中超时时长设置
具体设置很简单,方法有三种: (1)在主页面或者公共页面中加入:session.setMaxInactiveInterval(600);参数600单位是秒,即在没有10分钟活动后,session将失 ...
- sql 练习(1)
1.建立实验表 CREATE TABLE STUDENT (SNO ) NOT NULL, SNAME ) NOT NULL, SSEX ) NOT NULL, SBIRTHDAY DATE, CLA ...
- js new Date()
1.Date 对象用于处理日期和时间.创建 Date 对象的语法:var myDate=new Date()Date 对象会自动把当前日期和时间保存为其初始值.2.参数形式有以下5种: new Dat ...
- UVA 11214 Guarding the Chessboard
题意: 皇后防御的范围是他所在横.竖.对角线,地图上的#为可以放旗子的地方.问最少放几个皇后能防守所有#. 分析: vis数组开4维,对应行.列.主对角线.副对角线 代码: #include < ...
- 浅谈设计模式在GIS中的应用
设计模式在GIS中的应用 一.设计模式概述 随着面向对象技术的广泛应用,软件复用在越来越多的开发工程中被采用.在研究软件复用的过程中,设计模式的概念被提了出来.所谓设计模式就是一些设计面向对象的软件的 ...
- jq插件又来了,模拟select下拉框,支持上下方向键哦
好久没来了,更新下插件, 这个原理就是利用的 input[type='hidden']和自定义属性data-value捆绑传值操作的,可是设置默认选项,回调等参数,代码不多,比较简单,吼吼 (func ...
- Cannot initialise keyboard run ./nano-X
其中之一解决方案为: ./xinit
- openstack安装记录(二)keystone安装
先决条件 在你配置 OpenStack 身份认证服务前,你必须创建一个数据库和管理员令牌. 完成下面的步骤以创建数据库: 用数据库连接客户端以 root 用户连接到数据库服务器: $ mysql -u ...