目的
冗余 與 分布式 是 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為冗余系統並帶有四個客戶端.