HDPubServer

Navigation:  功能明细 > 数据接口 >

HDPubServer

Previous pageReturn to chapter overviewNext page

HDPubServer是基于iHD实时数据库扩展的数据传输服务。主要用于将iHD实时数据库中的数据发送到iPlat-dm模块,HDPubServer运行于iHD实时数据库服务端。HDPubServer具备接受注册、推送和查询等功能,配合主备iHD服务器,支持主备服务,供iPlat-dm模块选择调动。同时在主/备iHD服务器上运行的HDPubServer服务,dm可自动进行连接和切换。一个iPlat-dm模块可配置多个HDPubServer连接。

 

环境要求

服务端支持操作系统:Windows、Linux;

网络连接:RJ-45以太网传输速率100Mbps以上,推荐1Gbps及以上。服务器需对外开放端口5674。

 

HDPubServer端配置

HDPubServer配置文件位于iHyperDB的【config】目录下,配置文件名:HDPubServer.xml,文件内容如下:

<?xml version="1.0" encoding="utf-8" ?>

<HDPubServer version="1.0">

 <HostAddr IP="127.0.0.1" port="5673" />   //连接IHD地址和端口

 <BackupAddr IP="" port="" />

 <ThreadNum thread_number="3" />   //处理线程数                 

 <PublishFreq refresh_time="50"/>       //推送频率(单位:毫秒)

 <CheckHeartbeatsFreq check_time = "1000"/>   //心跳查询间隔(单位:毫秒)

 <ClientHeartbeatsInterval heartbeats_interval = "180" /> //客户端断开时间限制(单位:秒)

 <UpdateTagInterval update_interval = "60000" />  //线程更新tag频率(单位:毫秒)

 <LogMonitor tag_id = "12" />    //推送打印,跟踪tag ID

 <PackageSize package_size = "4193304" />    //发送包大小限制(单位:byte)

 <ServiceUrl url = "http://10.25.10.32:8080/iplat/service/S_BI_OP_10" />    //追踪调用链日志上传接口

 <RequestTimeout request_timeout = "5" />    //IHD请求超时时间

 <Login user = "" password = "" />    //连接IHD用户名密码

 <Encoding transfer_encoding = "2" /> //pubserver编码配置

 <Reregister reregister_time="60000" /> //重新注册检测周期

 <FullPush full_push="1" /> //全量推送

<Port port="5674" /> //HDPubServer 端口

</HDPubServer>

配置文件参数说明:

HostAddr:iHD主机参数;

IP:主机地址,按实填写;

port:主机端口,按实填写,缺省“5673”;

BackAddr:iHD备机参数;

IP:机地址,如有则填;

port:机端口,如有则填;

ThreadNum:

thread_number:程序线程数;

PublishFreq:

refresh_time:推送频率,单位ms;

CheckHeartbeatsFreq:

check_time:心跳检测频率,单位ms;

ClientHeartbeatsInterval:

heartbeats_interval:心跳间隔,单位s;

UpdateTagInterval:

update_interval:tag点刷新频率,单位ms;

LogMonitor:

tag_id:用于帮助查找分析故障用,定位任意一个ihd实时数据库中的非系统点,均可。

images_hs-caution

编码配置Encoding中1代表ihd中数据编码是gbk,2代表ihd中数据编码是utf-8,默认是utf-8目前PubServer只支持这两种编码。IHD存储所有数据的编码格式需要一致,编码配置和存储格式也要一致,否则iPlat显示时会出现乱码。全量推送配置中0代表值变化推送,1代表全量推送,默认是值变化推送。

 

iPlat-dm端配置

正式使用HDPubServer之前,需在iPlat-dm端进行对应配置。配置页面:iplat-dm/web/BIDH01,地址和端口需要与HDPubServer所部署的参数对应。

HDPubServer01

当一个iPlat-dm模块需要配置多个HDPubServer的节点时,类似上图黄色高亮部分(地址参数项)内可填写多个IP地址。注意填写规范:不同节点地址间用半角分号“;”分隔。

 

功能明细

HDPubServer接受iPlat-dm模块的请求,并反馈信息。支持如下功能:

注册、推送:HDPubServer接受iPlat-dm模块的注册,根据iPlat-dm模块提供的信号点表推送tag数据(逢变则传);

历史记录查询:根据iPlat-dm模块提供的查询条件,可以查询过去一段时间的历史记录或插值历史记录;

批量同步读:支持批量查询tag点;

条件查询:支持根据iPlat-dm模块提供的查询条件,查询返回tag点及其数值。

Tag点详情信息查询:支持查询点值量程、质量、时间戳等信息,具体支持的域如下:

默认不填 当前值vtq

timestamp 时间戳

quality 质量

A_DESC 描述

F_EGU_LOW 最小值

F_EGU_SPAN 量程

A_EGU_LBL 工程单位

A_CV 当前值vtq 与默认不填一样

F_CV 当前值vtq 与默认不填一样

A_TIMESTAMP 时间戳 与timestamp一样

F_TIMESTAMP 时间戳 与timestamp一样

A_QUALITY 质量 与quality一样

F_QUALITY 质量 返回实际质量数值

相关iPlat-dm模块的使用及配置,请查阅iPlat-dm模块手册。

 

启动和关闭

   启动HDPubServer之前,请确认config目录下有配置文件HDPubServer.xml。

windows系统下启动/关闭

使用数据节点服务管理工具,勾选HDPubServer,并点选启动/停止按钮;或直接在文件资源管理器中双击HDPubServer.exe启动,在该进程窗口按“q”键退出。

linux系统下启动/关闭

linux系统下,运行启动脚本hdstart启动,运行停止脚本hdstop停止。