tigase 简介
最近闲来无事研究了一下另一个基于XMPP协议开发的服务器Tigase,发现其相比Openfire还是有一定的优势的,官方号称其单台服务器可以同时承受50W在线人数的负载,从这一点来看比Openfire强很多(Openfire如果不考虑Roster估计可以达到单台1000的同时在线就不错了),对于iOS端使用XMPP协议开发的应用程序是一个好的选择,iOS端XMPP框架可以与Java服务端进行交互;
tigase 源码部署
1.下载安装支持
JDK1.6 Maven 2.x/3.x
2.获取Tigase server源码
svn co https://svn.tigase.org/reps/tigase-server/trunk/ tigase-server
3.使用Maven编译(文件将会被编译到根目录下的target文件夹下)
mvn assembly:assembly
4.对编译好的jar进行解压
cd target/ tar -zxvf tigase-server-5.1.0-SNAPSHOT-prodenv.tar.gz
5.配置环境变量
cd tigase-server-5.1.0-SNAPSHOT/ vi /etc/profile JAVA_HOME=/usr/java/jdk1.6.0_29 export JAVA_HOME PATH TIGASE_HOME="/home/workspace/tigase_server_dev/target/tigase-server-5.1.0-SNAPSHOT/" export TIGASE_HOME
并修改tigase.sh文件中的jdkpath为JAVA_HOME="${JAVA_HOME}"
6.赋予执行权限
chmod u+x bin/* grant all on *.* to root@127.0.0.1 identified by 'smm1018';
7.配置init.properties //mysql 为数据库
config-type=--gen-config-def --admins=admin@wemomo.com --virt-hosts =wemomo.com #$HOST_NAME --debug=server --monitoring=jmx:9050,http:9080,snmp:9060 --user-db=mysql --user-db-uri=jdbc:mysql://127.0.0.1:3306/tigasedb?user=root&password=smm1018
8.修改/tigase_server/src/main/assembly/prodenv.xml配置文件, 使assembly能够编译打包好所有的jar和必要的配置文件。
9.执行/tigase_server/database/mysql-create-db.sql创建数据库
执行/tigase_server/database/mysql-schema-4.sql创建表
执行/tigase_server/database/mysql-schema-4-sp.schema创建函数和存储过程(脚本有些问题,需要改动才可以正确运行)
//sql执行失败的话,就需要一段一段执行。。。。。。我都是一段一段执行的。
10.启动服务器
./bin/tigase.sh start etc/tigase.conf //更新部署代码 svn up;mvn clean;mvn assembly:assembly;cd target/;tar zxvf tigase-server-5.1.0-SNAPSHOT-prodenv.tar.gz;cd tigase-server-5.1.0-SNAPSHOT/;chmod 777 *;chmod 777 */*; ./bin/tigase.sh start etc/tigase.conf
启动成功后可以使用Psi或者spark等xmpp client进行测试。