“客户端缓存”Buffer是一个独立的exe程序,部署在客户端。在不使用Buffer的情况下,采集端将采集到的底层数据直接发送到服务端。如果网络出现故障或者服务器忙,采集的数据将会丢失,给企业造成损失。若在客户端部署Buffer则可以避免类似的问题。开启Buffer后,采集端并不直接将数据发送到服务端,而是先发送到Buffer,若网络正常或服务器空闲时Buffer会直接将数据发送到服务器,否则,Buffer先将数据缓存到本地缓存文件中,等到网络恢复正常或服务器空闲时将缓存在本地文件中的数据发送到服务端,尽可能的确保数据不会丢失。
启用Buffer:
首先,进行采集(客户端缓存)中的Buffer配置和采集端的配置,在采集端的配置中可以决定是否启用Buffer。
然后,启动Buffer后再启动采集端,就可以正常的使用Buffer的各种功能了。
●“客户端缓存”配置界面
●配置项说明:
配置项 |
名称 |
说明 |
取值 |
备注 |
---|---|---|---|---|
缓存文件 |
CacheFilePath |
Buffer缓存文件的路径,缓存文件名为buffer.buf |
非空字符串(最大长度256字节) |
缓存文件全路径不能超过作系统限制。如果配置为“F:\ihyperDB\CacheFile”,则Buffer缓存文件放在该路径下。如果配置为“CacheFile”,则缓存文件在hdBuffer.exe的同一级目录的CacheFile文件夹中,注意不能配置为“F:\”这种形式的。 |
缓存文件大小 |
CacheFileSize |
缓存文件的最大值 |
最小值为1,最大值为1048576,用户可以根据计算机的空间来自由的配置。 |
Buffer只有一个缓存文件,用来存放由于网络原因没有发送到客户端的数据。单位为兆,若缓存文件大小的设置的太小,连接的服务端数量过大(如缓存文件大小设置为1兆,连接的服务端数目为1000个)时,缓存记录数据可能会失败。 |
发送周期 |
SendPeriod |
若网络正常,Buffer按照发送周期定期的将缓存的数据发送至服务端,推荐值1000毫秒 |
最小为1,最大值为2147483647(2^31-1), |
单位为毫秒 |
发送超时 |
SendTimeOut |
Buffer向服务端发送数据的超时时间;如超过时间,则认为不成功,数据丢失 |
最小为最小为1,最大值为2147483647(2^31-1) |
单位为秒 |
连接超时 |
ConnTimeOut |
Buffer向服务端建立连接的超时时间;如超过时间,则认为连接不成功,数据丢失 |
最小为1,最大值为2147483647(2^31-1) |
<单位为秒 |
●如果配置文件由配置界面生成,某些配置项可以是中文,如缓存文件路径。
●如果配置文件不是由配置界面生成,配置项不能为中文。
●缓存文件最大值配置成功后最好不要随意更改,除非配置的缓存文件大小大于实际缓存文件大小。如缓存文件实际大小大小为10M,修改缓存文件最大值为100是可以的,修改为1则不行,会导致Buffer无法启动。