IM之tigase(一)源码安装

tigase和openfire有异曲同工之意,主要是实现IM的及时通信,和实现服务端向手机客户端实现消息推送的服务。但是tigase在测试实验中表现了良好的性能,单机状态下支持50万的并发。

本例采用的是源码安装,并且是采用当前最新版本的安装,先介绍下本机的环境,mac,java1.8,mysql5.7,git环境,tigase7.2.0

git环境是mac的默认环境,可以自己制定一个工作空间来clone项目,本例使用的地址是:git clone https://repository.tigase.org/git/tigase-server.git

然后进入到执行目录: cd tigase-server/

将依赖的jar包和当前项目编译并安装到本地仓库:mvn install

将源码导入到eclispe中,inport->exists maven project->tigase-server->finish

该过程会比较漫长,要下载对应的依赖和整合maven项目

修改对应的参数,在/etc/init-mysql.properties文件中修改配置内容如下:

--debug = server

--test = false

--virt-hosts = 10.16.87.44

admins = [ 'admin@10.16.87.44' ]

config-type = '--gen-config-def'

dataSource {

    default {

        uri = 'jdbc:mysql://localhost/tigasedb?user=tigase&password=tigase&useUnicode=true&characterEncoding=UTF-8&autoCreateUser=true'

    }

}

http (class: tigase.http.HttpMessageReceiver) {}

 

/etc/tigase.conf中的环境变量

JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home"

 

此时执行mysql数据库的初始化操作,在数据目录tigase-server/中,下面有一个文件夹scripts

执行安装mysql数据库的命令:./scripts/db-create-mysql.sh tigase tigase tigasedb root root localhost

对于执行的参数解释:第一个tigase是用户名,第二个tigase是密码,tigasedb是数据库,第一个root是管理员用户名,第二个root是管理员密码,localhost是数据库地址。

如果一切正常会执行成功,我操作是报的错误是:

Press [Enter] key to start, otherwise abort...

错误: 找不到或无法加载主类 tigase.util.DBSchemaLoader

错误: 找不到或无法加载主类 tigase.util.DBSchemaLoader

查看db-create-mysql.sh的脚本,发现最后几行有一段执行命令如下:

java -cp "jars/*" tigase.util.DBSchemaLoader -dbHostname ${DB_HOST} -dbType ${DB_TYPE} -schemaVersion ${VERSION} -dbName ${DB_NAME} -rootUser ${ROOT_NAME} -rootPass ${ROOT_PASS} -dbUser ${USER_NAME} -dbPass ${USER_PASS} -logLevel ALL

java -cp "jars/*" tigase.util.DBSchemaLoader -dbHostname ${DB_HOST} -dbType ${DB_TYPE} -schemaVersion ${VERSION} -dbName ${DB_NAME} -rootUser ${ROOT_NAME} -rootPass ${ROOT_PASS} -dbUser ${USER_NAME} -dbPass ${USER_PASS} -logLevel ALL -file database/${DB_TYPE}-pubsub-schema-3.0.0.sql

java -cp的命令,并且执行的jar是在jars/*的jar报,此时将maven编译的本地仓库中的

tigase-server-7.2.0-SNAPSHOT.jar拷贝的jars/路径中。

./scripts/db-create-mysql.sh tigase tigase tigasedb root root localhost

一切正常。

eclipse启动项目:

run Configuartion

填写的地方主要是两个:

main的页签中填写

    project是选择:tigase-server

    main class选择的是:tigase.server.XMPPServer

arguments页签中

    program arguments中填写:--property-file etc/init-mysql.properties

    vm arguments中填写:-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

 

ok,apply,运行程序,一切正常。

 

转载于:https://my.oschina.net/wangshuaixin/blog/819566

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值