不介绍这个了。
2.1 Eclipse安装git插件。
2.2 下载源码
git clone https://repository.tigase.org/git/tigase-server
选择稳定的版本右键 checkout
2.3 Pom错误修正
修正此错误需要在build节点下添加如下内容(忽略这个报错信息)
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e groupId>
<artifactId>lifecycle-mappingartifactId>
<version>1.0.0version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.gmavengroupId>
<artifactId>gmaven-pluginartifactId>
<versionRange>[1.5,)versionRange>
<goals>
<goal>executegoal>
goals>
pluginExecutionFilter>
<action>
<ignore>ignore>
action>
pluginExecution>
pluginExecutions>
lifecycleMappingMetadata>
configuration>
plugin>
plugins>
pluginManagement>
2.4 配置
init.properties 基本配置
config-type=--gen-config-def
--admins= admin@im.cai
--virt-hosts = im.cai
#--debug=http
--debug=server, xmpp, cluster, pubsub
--user-db=mysql
--user-db-uri=jdbc:mysql://192.168.1.100:3306/tigase?user=admin&password=admin
说明:1. admins为管理员账号,需要手动注册。
virt-hosts 为虚拟域名,依个人喜好设定。
debug指定输出哪些包或者类中的日志。
Jvm启动参数配置
1. Program arguments : --property-file etc/init.properties
2. VM argument:
-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Djdbc.drivers=com.mysql.jdbc.Driver:org.postgresql.Driver:org.apache.derby.jdbc.EmbeddedDriver -server -Xms100M -Xmx200M -XX:PermSize=32m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=128m
说明: 其中-Xmx200M表示给tigase jvm内存分配最大堆内存大小为200M,此值依个人喜好调整。
3.1 下载linux环境tigase文件
wget https://projects.tigase.org/attachments/download/2657/tigase-server-7.0.2-b3821-dist-max.tar.gz
3.2 解压
tar –zxvf tigase-server-7.0.2-b3821-dist-max.tar.gz 解压到当前目录下并更名为tigase-server (依个人喜好)
3.3 配置
init.properties 配置文件与eclipse配置文件相同
tigase.conf 此配置文件在 /xx/tigase/etc/ 目录下
说明:
3.4 启动
在安装目录执行: ./scripts/tigase.sh start etc/tigase.conf
也可修改tigase.sh文件,指定tigase.conf配置文件
创建tigase命令:
cd /usr/bin
在此目录下执行 : ln –s /xx/tigase/scripts/tigase.sh tigase
表示创建软链接(快捷方式)tigase命令指向 tigase.sh可执行文件
至此,可以直接执行 tigase start|stop|restart 等命令来 启动|停止|重启 tigase
4.1 在自己喜欢的目录创建tigase-XX子目录
使用Xshell的文件传输工具将代码挪到XX目录
4.2 使用maven打包
进入到工程目录cd tigase-XX
执行mvn install -DskipTests (跳过测试)
4.3 部署启动
打包完成后,在target目录下将会生成tigase-server.jar文件,将此jar复制到/XX/tigase/jars目录下,启动tigase
5.1 服务端配置
etc/tigase.conf 文件添加如下配置:
REMOTE_DEBUG="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787"
5.2 IDE客户端配置
以eclipse为例:
Debug Configurations – Remote Java Application – New
6.1 服务端配置
etc/tigase.conf 文件添加如下配置:
JMX="-Djava.rmi.server.hostname=192.168.1.120 -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
6.2 客户端连接
以jvisualvm为例,jvisualvm.exe在jdk安装目录bin/。
运行jvisualvm.exe ,添加远程主机,输入服务器地址。
命令 jstack, 将内存快照信息输出到文件。
一般需要获取多份,每隔3~10(依个人喜好)获取一次,用于分析线程等待超时及死锁等等。
曾经死过的锁
8.1 配置及依赖
init.properties 配置文件添加
--comp-name-2=http
--comp-class-2=tigase.http.HttpMessageReceiver
http/api-keys[s]=open_access
# http/http/port[I]=8080
此组件依赖servlet-api-3.1.jar 、 groovy-all.jar
8.2 访问
a. tigase配置管理页面: http://localhost:8080/setup/
b. 后台管理页面: http://localhost:8080/ui/ (使用管理员账号登陆)
9.1 配置及依赖
init.properties 配置文件添加
--monitoring = jmx:9050
此组件依赖 jdmkrt.jar tigase-extras.jar
将下列文件放在对应的目录
bin/monitor.sh
etc/monitor.properties
libs/tigase-monitor.jar (放在jars/ 下会导致启动错误)
sounds/Alarm.wav alarm1.wav
配置 monitor.properties中nodes=red:192.168.1.150:admin:admin_pass
admin:admin_pass 在etc/jmx.access jmx.password 中配置,使用默认配置即可。
9.2 监控使用
在tigase目录下执行命令 ./bin/monitor.sh 启动monitor
如下:
10.1 配置及依赖
init.properties 配置文件添加
--cluster-mode = true
--cluster-connect-all = true
--sm-cluster-strategy-class=tigase.server.cluster.strategy.OnlineUsersCachingStrategy
集群模式需要破解tigase-acs.jar,将破解后的jar包放在jars/目录下,启动各节点,节点之间通过数据库自动发现。
集群模式下每个节点的monitor配置:
配置 monitor.properties中
nodes=red:192.168.1.120:admin:admin_pass,bule:192.168.1.130:admin:admin_pass