当前位置:文档之家› 新增功能介绍---冗余

新增功能介绍---冗余

新增功能介绍----------冗余部分以下内容主要介绍功能的使用、目前存在的已知问题以及部分问题的解决方案。

易控的冗余包括三个方面的内容:设备冗余、工程冗余和网络冗余。

1、设备冗余主要针对易控IO通信设备,是热备份,即:采用两个相同的设备,互为备份,当一个设备失败后,另外一个设备接替其工作。

针对自身无法完成冗余的设备。

1、配置(以串口为例):在工程中演示1)添加冗余设备时新建通道方式2)添加冗余设备时选择已有通道方式2、切换设备的方式:1)手动:使用用户程序2)自动:通过切换变量控制3、属性1)切换变量2)工作变量:显示当前工作设备。

如果两个设备都不正常,该值会在0、1间来回变化3)切换设备时是否进行数据同步:勾选此项,切换工作设备时会将易控中显示的值写入到设备中4、注意:1)部分设备需要独占通道:modbus主站、三菱Q系列编程口。

2、工程冗余是工程的热备份,即:采用多台计算机运行易控工程,互为备份,当一台计算机失败后,另外一台计算机接替其工作,运行易控工程。

目前只实现双机冗余,即两台计算机运行易控工程。

1、工程冗余1)支持的内容:变量、事件记录、报警、历史记录2)前提:两台进行冗余的计算机要求配置和性能基本一致2、09版本中建立冗余工程:1)单机工程方式建立单个工程)注意:开发过程中,对用户程序中需要添加判断语句【原因:避免用户程序两个冗余工程同时执行时带来的问题,例如:变量来回传递,程序多次执行】3、冗余工程的配置:结合工程演示)常规配置:配置完成后就能够使用冗余功能)高级配置:对通讯端口、心跳检测、同步缺失数据的时间进行设置【同步缺失数据的时间:比较设定时间和实际缺失数据时间,按较小的进行】成冗余工程:一键生成方式、手动方式)冗余的属性:连接状态、工作类型、本机类型)冗余的用户程序:4、工作机切换的情况:)通过程序控制切换:立即切换)工作机正常退出(ALT+F4,退出命令):立即切换)工作机异常退出、网线断开:通过心跳检测判断1)正常情况下,主机为工作机2)工作机退出后,备用机为工作机,再次运行退出的工程,工作机不发生变化3)如果网络出现故障,导致两个冗余工程都变成“工作机”后,网络再次正常通讯时,主机为工作机。

5、web的工程冗余1)配置:结合工程进行演示注意:输入的IP为web服务器的IP地址。

主、从机地址尽量与冗余主、从机一致2)先web,后冗余。

即:先对工程进行web编译、发布,然后生成冗余工程。

【原因:因为对进行web编译、发布操作,只能对一个工程进行,另一个中如果没有web编译后的内容会导致本地浏览通讯不正确;否则需要对存放发布后文件的文件夹进行共享,但浏览时需要输入路径】注意:1)web的外网不支持工程冗余。

【原因:端口映射决定。

外网需要对通讯端口进行映射,但映射的端口要与IP进行绑定,所以不能同时对两个冗余工程映射相同的通讯端口,而目前web处又无法配置两组通讯端口。

解决方案:可以添加一个通讯服务器,其实是CS结构,C断为web的通讯服务器】2)冗余的属性在网络上不传递6、网络的工程冗余1)配置:结合工程进行演示注意:在客户端进行配置,输入的IP为服务器的IP地址,且主、从机地址尽量与冗余工程主、从机一致。

也可以先网络后冗余方式进行。

3、网络冗余(双网冗余)1、工程冗余的网络冗余1)配置:结合工程进行演示2)网段切换不影响当前工作机,只是两个冗余工程会使用另一个网段进行通讯2、web的网络冗余1)配置:结合工程进行演示3、网络的网络冗余1)配置:结合工程进行演示4、网段切换情况:1)网线损坏、禁用本地连接、断开网线。

(禁用本地连接方式,禁用操作的一段切换会较快)4、工程冗余+网络冗余1、工程冗余(计算机冗余):1)配置:结合工程演示2、Web1)配置:在“高级”---“工程冗余”处配置。

结合工程演示3、网络1)配置:在客户端进行,“高级”---“工程冗余”处配置。

结合工程演示5、已知问题和部分解决方案1、数据重复、丢失问题1)备用机启动过程中,工作机端快速产生大量数据。

备用机启动后,可能出现重复数据【该问题几率很小,与时刻有关,暂时没有好的解决方案】2)快速切换工作状态,偶尔会导致数据重复或者缺失【该问题几率很小,暂时没有好的解决方案】3)频繁切换工作状态(每次操作切换两次工作状态,切换后修改变量值),有时候数据库中有重复数据。

【事件记录、报警中存在。

暂时没有好的解决方案】4)数据库中数据达到保留天数,删除数据的同时有新的数据写入数据库,有时候会导致数据库中数据顺序不正确。

报警窗、记录窗查看到的数据顺序也是乱的。

【报警、事件记录中存在该问题,暂时没有好的解决方案】2、时钟同步问题:1)有时候出现时钟同步不执行。

【由于目前时钟同步机制本身不是高可靠性的方式造成。

解决方案:如果用户需要每次同步或者要手动进行时钟同步,可以用时钟同步的方法完成】3、双网时问题:1)冗余工程配置多个IP,工作机和备用机端的“连接IP”有时候看到的不在同一网段。

【目前查询IP采用轮询方式造成,不影响通讯。

解决方案:尽量使两台机器同时启动】4、UNC路径问题:1)直接使用“生成冗余工程”菜单生成冗余工程,并且冗余工程存放位置直接选择网络映射的路径时。

第一编译生成后的冗余工程时,有时候编译失败,提示有文件被使用。

例如:“错误: 未能写入输出文件“d:\冗余工程\冗余支持的所有功能\Compiled\报表1.irdl.Scripts.dll”--“另一个程序正在使用此文件,进程无法访问。

”【解决方案:重新编译一次即可】5、分别修改两个冗余工程:1)不赞成使用该方式。

冗余工程理论上要求两个工程完全一致,修改后可能会导致各种问题。

例如:两个冗余工程分别添加同名变量,新添加的变量不能正常通讯。

【网络变量采用GUID标识的原因。

解决方案:修改工程后,重新生成冗余工程】6、两个冗余工程使用同一个数据库问题:会导致数据库中出现重复数据。

【解决方案:报警、事件记录,修改数据库名称;历史记录,因为单机与工程名称一致,目前从机生成的数据库会加上“_slave”进行区分】7、日志信息问题:信息不够明确。

例如:信息2009/12/5 15:30:18 LIANGLING-PC 运行环境客户端与服务器'net.tcp://192.168.0.117:10012/RDDCServer' 连接成功!【解决方案:查看“RDDC”冗余功能的标志】8、报警:1)从机端产生大量报警时,切换工作状态,主机日志一直报错;重新启动主从机的Irnun后,一直在重连。

【暂时未找到问题原因】2)配置延时报警的冗余工程,延时时间内切换两次工作状态,只显示报警的报警窗中同一个变量会出现多条报警信息。

【暂时未找到好的解决方法】3)产生报警后,退出备用机工程;工作机端应答报警,再启动备用机,不能同步应答时间。

【因为目前数据采用两边记录方式,以及数据同步以报警或者恢复的最后时间为准,又无法对数据库进行比较造成。

暂时没有好的解决方案】4)网段切换后,应答报警时备用机端不能显示应答时间。

【该问题未找到好的解决方案】5)(报警的历史数据通过ODBC数据源记录到sqlexpress的数据库中),工作机端变量变化较快(<1s),备用机端InRun会出现遇到错误关闭的提示。

【碰到过一次,未确定问题原因】6)工作机端停止邮件报警服务后,切换两次工作状态,启动邮件报警服务,再次产生报警,邮件收到重复报警信息。

【未找到好的解决方案】7)报警恢复和应答可以在备用机端进行。

【目前机制造成,不是bug】9、事件记录问题:1)冗余工程工作状态未确定时,进行用户登录操作,能够登录,但登录信息不记录到记录窗中【网络用户不存在导致。

解决方案:工程中进行控制,工作状态确定后才能进行登录、注销操作】2)备用机端用户登录时“记录窗”中不记录登录信息,备用机端登录的用户对变量的操作能记录到“记录窗”中【网络用户不存在导致。

解决方案:工程中控制,备用机端不能进行登录、注销操作】3)配置事件记录的冗余工程(记录登录、记录注销,数据库默认),运行55个小时,工作机比备用机端默认数据库中少48条数据【性能上的问题,暂时没有好的解决方案】4)登录、注销操作只能在工作机端进行10、Web处的问题:1)web配置了网络冗余,两个运行冗余工程的机器分别通过直连线和另一条走交换机的网线连接,Inrun端断开走交换机的网线,不运行Inrun的机器端通过IE浏览时,不能执行"Grp.open()"命令打开画面。

【暂时未修正该问题】2)先生成冗余工程,再进行web发布。

主机发布WEB,切换工作状态后从机为工作机,IE端应答报警,应答时间不传递给工作机。

【新的bug】11、各模块用户程序问题:1)除冗余模块本身的用户程序,其他模块都为单机程序。

【用户如果需要在冗余工程中使用,且要求一边操作两边效果一致时。

解决方案:添加变量控制用户程序的执行】2)历史记录处:工作机端执行“StopRecord()”方法后,备用机端也不能进行历史数据记录;备用机端执行“StopRecord()”方法不起作用。

【后期修改出的bug,暂时未修正】3)历史记录:冗余工程备用端使用“启动/停止历史记录”命令,数据库启停表能够记入数据。

【暂时未修正的bug】12、用运行速度慢配置低的计算机作为服务器时,会出现连接有问题或者其他问题。

【解决方案:使用性能相近的计算机运行冗余工程】三、对技术支持提出问题的解答:冗余:冗余切换的稳定性怎么实现的?回答:稳定性的实现靠冗余切换的过程。

冗余切换有两种方式,一种自动切换,一种手动切换;自动切换依赖于心跳检测,如果发现对方不存在切换为工作机;手动切换靠通知机制。

冗余配置过程中的注意问题。

回答:工程冗余需要注意:高可靠性的网络,例如直连线,放在第一个IP地址处。

设备冗余1. 主设备发生故障时,是否会自动换到到配置好的从设备?回答:切换时设备无主、从之分,只有工作设备和冗余设备。

工作设备发生故障时,自动切换到冗余设备。

(按照出错控制执行)2. 工作状态变量:主设备,从设备是指当前工作的是主设备还是冗余设备吗?回答: 是。

3. 手动控制切换到有故障的设备上时,切换控制变量显示已为“主设备”,此时并没有切换;当主设备运行正常后,再次进行切换,通过观察“设备的工作状态”发现仍然无法切换到主设备,是正常的么?回答:不是这么用的。

“切换变量”是用来控制切换的,而不是用来显示的。

“工作变量”才是用来显示当前的工作设备的。

这两个属性正常应该关联两个变量,“切换变量”可以从设备中取一个寄存器的值,赋值给数据库变量,通过数据库变量进行判断。

相关主题