目的
冗余 与 分布式 是 Wincc OA 系统的两个特点,其实这两种技术在软件开发中 较为常见:
一个是保证系统的高可用性(也就是高稳定性);
一个是保证系统的横向扩展;
下面就详细说说这两种技术在Wincc OA里的应用
高可用(H.A.)
百度了下高可用的定义 指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。
说下其最简单的实现方式 如下图 主机A 与主机B 运行着相同的程序,
默认情况下由主机A(active) 向客户提供服务,
当主机A出现问题时系统能够迅速切换主机B 向客户提供服务;
当然 在主机A正常工作期间 A 与客户服务的交互数据 也要同步到主机B上,否则发生切换的时候会发生主机B数据丢失
这是最简单的一个冗余模型 ,实际上我们为了更高的可靠性系统可能更加复杂
如图示 A B C D 四台主机
其中C为A的备机 D为B的备机
正常主机A与主机B组成冗余A向外提供服务 同时他们各自还有冗余数据库,
当主机A 挂掉的时候 立马切换到主机B向外提供服务 同时唤醒主机C 接替主机A并与主机B组成冗余服务
这种组合方式 大大提高了系统可用性
分布式
我们说单机总会有局限,比如说公司有跨国业务,把所有的业务放在一台机器上不现实,
可能还有另外一种情况,我们现场的控制点特别多,单台主机可能根本处理不过来,
这时候的解决方案就是分布式,WinccOA的模块化设计使得系统很容易实现分布式
图示还原了上述场景 系统1可能是某个工厂的业务(数据采集/工艺控制/数据分析),
系统2 可能是这个工厂的一个分公司,拥有系统1的业务,
系统3可能是系统1的扩展单元 只负责数据的采集,
我们看到分布式系统各主机之间可以交换数据,这得益于WinccOA强大事件管理器(EV模块),这样主公司就可以无缝拉取分公司的数据甚至对其工艺进行升级
混合模式
当业务到达一定体量的时候,分布式模型一定是混合的,很多情况我们又要兼顾冗余备份又要兼顾系统的分布式扩展,
这里截取了官方手册的一张图,带大家看下混合模式的拓扑
我们看到同样的系统1,2,3组成的分布式系统, 系统1为冗余系统并带有四个客户端.