tigase开发环境搭建和Monitor搭建

发布时间: 5年前 (2020-04-29)浏览: 792评论: 0

1 IM服务端开源工程
1.1 主流开源工程介绍
不介绍这个了。

2 Eclipse部署
2.1 Eclipse安装git插件。

2.2 下载源码

git clone https://repository.tigase.org/git/tigase-server

选择稳定的版本右键 checkout
图片.png

2.3 Pom错误修正

图片.png
修正此错误需要在build节点下添加如下内容(忽略这个报错信息)

<pluginManagement>
   <plugins>
    <!--This plugin's configuration is used to store Eclipse m2e settings
     only. It has no influence on the Maven build itself. -->
    <plugin>
     <groupId>org.eclipse.m2e </groupId>
     <artifactId>lifecycle-mapping</artifactId>
     <version>1.0.0</version>
     <configuration>
      <lifecycleMappingMetadata>
       <pluginExecutions>
        <pluginExecution>
         <pluginExecutionFilter>
          <groupId>org.codehaus.gmaven</groupId>
          <artifactId>gmaven-plugin</artifactId>
          <versionRange>[1.5,)</versionRange>
          <goals>
           <goal>execute</goal>
          </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 Linux环境部署
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/ 目录下

图片.png
说明:

JMX是远程监控的配置
REMOTE_DEBUG为远程调试配置
HEAP_DUMP是内存溢出策略配置, 内存溢出后会自动生成dump文件到指定目录
配置项按需添加
3.4 启动

在安装目录执行: ./scripts/tigase.sh start etc/tigase.conf

也可修改tigase.sh文件,指定tigase.conf配置文件

图片.png
创建tigase命令:

cd /usr/bin

在此目录下执行 : ln –s /xx/tigase/scripts/tigase.sh tigase

表示创建软链接(快捷方式)tigase命令指向 tigase.sh可执行文件

至此,可以直接执行 tigase start|stop|restart 等命令来 启动|停止|重启 tigase

4 Linux环境代码打包
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 远程调试
5.1 服务端配置

etc/tigase.conf 文件添加如下配置:

REMOTE_DEBUG="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787"
1
2
5.2 IDE客户端配置

以eclipse为例:

Debug Configurations – Remote Java Application – New

图片.png
6 内存监控
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 ,添加远程主机,输入服务器地址。

右键 主机添加JMX连接,输入端口号8888。
图片.png
7 内存快照
命令 jstack, 将内存快照信息输出到文件。

一般需要获取多份,每隔3~10(依个人喜好)获取一次,用于分析线程等待超时及死锁等等。

图片.png
曾经死过的锁
图片.png

8 http-api 组件
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 monitor 组件(linux环境下)
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
1
admin:admin_pass 在etc/jmx.access jmx.password 中配置,使用默认配置即可。

9.2 监控使用

在tigase目录下执行命令 ./bin/monitor.sh 启动monitor

如下:
图片.png

10 集群模式
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
 
原文链接:https://blog.csdn.net/Cancer_DD/article/details/47260113

标签:

上一篇: java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
下一篇: Tigase监控配置

相关文章暂无相关
评论列表暂无评论
发表评论
验证码

«   2024年4月   »
1234567
891011121314
15161718192021
22232425262728
2930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接
    • RainbowSoft Studio Z-Blog
    • 订阅本站的 RSS 2.0 新闻聚合
    ︿
    Top