本章详细介绍了iHD的Web客户端组件的安装部署过程
环境准备:开始安装部署前,请先确保已经安装好所需数据库sqlite3(本地安装)或mysql(指定节点)
u脚本执行
1.解压压缩包;
2.运行install.sh安装
install会自动安装tomcat、java、部署hdWeb文件、建立共享目录以及设置tomcat服务启动等;安装目录是/data/hdWeb/下
1.解压压缩包;
2.使用管理员权限运行install.bat
install会自动安装tomcat、java、部署iplat文件、建立共享目录以及设置tomcat服务启动等
服务名称:hdweb-tomcat(在任务管理器的服务中可以查看)
安装目录是C:\hdweb\下
i.sqlite数据库
LINUX安装包的脚本在hdWeb.tar.gz 解压的Packages下的hdWeb-sql.tar.gz的文件中,WINDOWS安装包的脚本在解压所得的Packages下的hdweb-sql.zip的文件中,下面包含了4j-smart以及hdWeb的初始化脚本,先执行4j-smart下的脚本,再执行hdWeb下的脚本,执行时按版本号由小到大执行脚本。
如脚本较少,可直接再linux服务器上进入sqlite3命令行模式运行脚本;如脚本较多,可先在windows的dbeaver数据库工具上执行完脚本,再将对应的.db文件拷贝到linux服务器上。
ii.mysql数据库
LINUX安装包的脚本在hdWeb.tar.gz 解压的Packages下的hdWeb-sql.tar.gz的文件中,WINDOWS安装包的脚本在解压所得的Packages下的hdweb-sql.zip的文件中,下面包含了4j-smart以及hdWeb的初始化脚本,先执行4j-smart下的脚本,再执行hdWeb下的脚本,执行时按版本号由小到大执行脚本。
可直接使用dbeaver数据库连接mysql数据库并运行相关脚本。
注:mysql在创建函数时,用到了delimiter重定义结束符,如直接在命令行中执行mysql脚本,则可直接执行,如使用dbeaver等工具(dbeaver中的mysql驱动不支持使用分号作为 delimiter),则需要把结束符改为$$(即图中1和2分别改为delimiter $$和$$)后再执行脚本。
▪配置修改
1.修改数据库配置文件
Linux下访问/data/hdWeb/hdWeb-tomcat/webapps/hdWeb/WEB-INF/classes/
WINDOWS下访问C:\hdweb\hdweb-tomcat\webapps\hdweb\WEB-INF\classes\
打开路径下的application.properties文件,并修改图中几处配置:
a.为组件名称
b.为schema名称(使用sqlite3时均为main,使用mysql时分别为iplat和iplatdb)
c.为数据库连接方式:
i.jdbc:放出第一行,注释后两行,并修改4中的数据库连接参数
ii.jndi:注释第一行,放出后两行,并修改tomcat配置文件server.xml中的数据库配置
d.为数据库驱动名称、地址、用户名、密码(使用sqlite3时地址为其.db文件在本机的绝对路径)
▪修改Tomcat配置文件
打开tomcat安装目录下的conf里面的server.xml,并修改图中1和2处的配置。
1.为数据库配置,如连接方式为jndi,需要修改的配置项为driverClassName、username、password、url,如连接方式为jdbc,则无需修改
u数据库为mysql:
则driverClassName为com.mysql.jdbc.Driver,username和password按实际填写,url为jdbc:mysql://127.0.0.1:13306/iplat?useUnicode=true&characterEncoding=utf-8&useSSL=false,其中红色部分按实际填写
u数据库为sqlite:
则driverClassName为org.sqlite.JDBC,username和password按实际填写,url为jdbc:sqlite:/database.db,其中红色部分为数据库文件路径,按实际填写
2.为资源路径配置。
第一行不动,
第二行docBase改为服务器上存放静态资源的全路径,path为web端映射的资源routing。
RPCServer通过ICE提供状态查询的相关接口,BB调用该接口将查询ihd配置状态
1.配置文件如下:
# The server creates one single object adapter with the name
# "HDConfigHandler". The following line sets the endpoints for this
# adapter.
#
IdentityName=HDConfigHandler
ihd.request.timeout=30
ihd.connection.timeout=30
ihd.connection.primary=admin:admin@168.2.8.173:5673
ihd.connection.backup=admin:admin@168.2.8.174:5673
HDConfigHandler.Endpoints=tcp -p 30000:udp -p 30000:ws -p 10002
#
# Warn about connection exceptions
#
Ice.Warn.Connections=1
Ice.ThreadPool.Server.Size=5
Ice.MessageSizeMax=102400
参数说明:
❖ ihd.request.timeout:请求超时时间,单位为秒。
❖ ihd.connection.timeout:连接超时时间,单位为秒。
❖ ihd.connection.primary:主机配置,格式为:用户名:密码@IP:端口
❖ ihd.connection.backup:备机配置,格式为:用户名:密码@IP:端口;单机时填空即可;
❖ HDConfigHandler.Endpoints:配置服务对外端口,一般只需修改tcp端口即可。
❖ Ice.Warn.Connections:设为1时,记录断开连接信息,一般不需更改
❖ Ice.ThreadPool.Server.Size:服务端同时处理ICE连接数,一般不需更改
❖ Ice.MessageSizeMax:ICE最大消息大小,单位为KB。