釧助仁

摘 要 監控類軟件作為電廠實現生產、運行、管理自動化的重要部分,為電廠實現生產運行設備自動監視、自動控制、生產、運行、管理信息自動交換、快速發布起著重要的作用,但隨著電廠對生產運行需求越加規范及C/S架構本身存在的問題,采用C/S架構搭建的監控類軟件已經無法適應新時期的要求,出現了一些亟待解決的問題,而另一方面,電廠監控類軟件中采用B/S架構搭建的軟件越發凸顯其優越性,如軟件更新比較容易、使用比較簡單、數據維護更新簡單快捷、軟件故障率低、運行時間長等,因此,將C/S架構的軟件遷移至B/S架構的軟件成了電廠解決當前存在的問題的一種經濟、有效的手段。本文就架構遷移進行探討其可行性。
【關鍵詞】C/S B/S 監控類軟件 遷移評價體系 無縫遷移 逆向工程再造
1 論文研究的目的及意義
監控類軟件作為電廠實現生產、運行、管理自動化的重要部分。為電廠實現生產運行設備自動監視、自動控制;為生產、運行、管理信息自動交換、快速發布起著重要的作用。這些軟件的部署確實使電廠生產、運行、管理信息化的水平得到了提高,為電廠提高了生產過程的效率與安全性,提高了運行管理的及時性、全面性、準確性,減少了人力資源成本、維護成本、管理成本。但隨著電廠對生產運行需求由粗放式、手工式向精細化、自動化的轉變,以及日趨規范化的生產運行管理對軟件的可靠性、可維護性提出了更高的要求,電廠監控類軟件中按照以前C/S架構搭建的軟件已經無法適應新時期的要求,出現了一些亟待解決的問題,如:資源消耗率越來越高、進程阻塞現象頻頻出現、數據更新越發困難、數據垃圾難于清理、維護責任越發不合理、使用越來越不方便等;而另一方面,電廠監控類軟件中采用B/S架構搭建的軟件越發凸顯其優越性,如軟件更新比較容易、使用比較簡單、數據維護更新簡單快捷、軟件故障率低、運行時間長等,因此,將電廠C/S架構的監控類軟件遷移至B/S架構,就成為了解決上述問題的一種可行方法。
但是,是否所有的監控類軟件都適合采用B/S架構?是否當前的監控類軟件都具有遷移的可能性?具有遷移可能性的軟件遷移后是否能確確實實解決遷移前存在的問題?需要遷移的軟件采用何種方式進行遷移、其遷移方案是什么?遷移后的軟件會帶來哪些優勢?這些就是本文所要探討的內容。
2 C/S和B/S架構介紹和優缺點比較
C/S和B/S是兩種截然不同的軟件架構,兩者所涉及的適用范圍、開發技術、管理模式和運行方法都存在較大的差異,軟件系統在兩者之間的遷移存在較大的難度,是一個系統性的工程。因此,在系統遷移初期必須做好系統遷移的可能性分析工作,了解C/S和B/S架構的相關知識,把握兩者間存在的技術特點、適用范圍和應用差異,解決系統遷移中涉及的技術、難點、工作量、資源配置和步驟等問題,以提高系統遷移的成功率。
2.1 C/S架構相關知識介紹
C/S(Client/Server)結構即客戶機與服務器結構。是軟件系統體系結構,具有很強的通信處理能力和圖像處理能力。但無論是二層網絡結構還是三層結構,必需在客戶端安裝相應軟件,需要客戶端的人為干預,加之軟件產品的更新換代十分快。所以系統存在伸縮性差和維護工作量大的缺點。
2.2 B/S架構相關知識介紹
B/S(Browser/Server)結構即瀏覽器/服務器結構。Web方式是基于廣域網,通過網頁發送信息,所有與系統有關信息都可以通過瀏覽器訪問方式獲取(極少部分事務邏輯在前端實現),提升系統的可伸展性和降低客戶端維護量。
2.3 C/S和B/S架構的比較
C/S與B/S是過去10年世界開發模式技術架構的兩大主流技術,兩種技術本身存在許多的優點,都擁有一定的市場份額和客戶群,但隨著技術的不斷發展和主流應用向B/S或更高級的ERP、中間件技術傾斜,C/S架構開始走上了下坡路。
2.3.1 C/S架構的優勢與劣勢
(1)應用服務器運行數據負荷較輕。最簡單的C/S體系結構的數據庫應用由兩部分組成:客戶應用程序(前臺程序)和數據庫服務器程序(后臺程序)。運行前臺程序的機器稱為客戶電腦,運行后臺程序的機器稱為應用服務器。如需要對數據庫中的數據進行操作時,客戶程序會自動尋找服務器程序,向它發出請求,服務器程序根據事先預定的規則作出應答,送回結果,所以應用服務器運行數據負荷較輕。
(2)數據的儲存管理功能較為透明。數據庫中數據的儲存管理功能,是由客戶機和服務器分別獨立進行的。對于工作在前臺程序上的最終用戶,是“透明”的,他們無須過問背后的過程,就可以完成自己的一切工作。但在C/S體系下,數據庫不能真正成為公共、專業化的倉庫,它受到獨立的專門管理。
(3)C/S架構的劣勢是維護成本高且投資大。首先,如果需要建立兩地間的“實時”數據同步,就必須在它們之間建立實時的通訊連接,才能保持兩地的數據庫服務器在線運行,這樣網絡管理人員要同時對服務器與客戶端維護管理,這需要復雜的技術支持和高昂的投資。其次,傳統C/S架構的軟件需要針對不同的操作系統開發不同的版本,由于軟件的更新換代快,導致高代價和低效率。以此同時在JAVA語言出現之后,B/S架構更加猛烈沖擊C/S。
2.3.2 B/S架構的優勢和劣勢
(1)簡化了客戶端。B/S架構的軟件只需管理服務器,不同的客戶機上無需再安裝不同的應用程序,所有的客戶端只是瀏覽器。
(2)簡化了系統的開發和維護。系統的開發者不需要再為不同級別的用戶開發不同的應用程序,所有的功能都能在服務器上實現,只要為不同級別的用戶設置不同的權限,不需要再對客戶端做任何維護。
(3)客戶端操作變得更簡單。客戶端只是一個簡單易用的瀏覽器,使用者無需接受任何專門的培訓就可以直接使用。
(4)成本降低,選擇更多。在服務器操作系統上可以選擇windows或Linux,都不影響客戶端運行。其中Linux安全性高、免費(包括數據庫也是免費)。
(5)應用服務器運行數據負荷較重。B/S架構管理軟件只需安裝在服務器端,所有用戶的大部分需求都通過瀏覽器在服務器端實現。所以應用服務器運行數據負荷很重,一旦發生服務器“崩潰”等問題,后果不堪設想。為此許多用戶都有備份,以防萬一。
2.3.3 C/S與B/S架構優缺點比較
總結以上介紹,我們可以得出如表1所示的C/S架構和B/S架構優劣分析表。
2.4 C/S遷移至B/S架構的難點
根據金蝶軟件、IBM、Amazon公司在過去10年實施C/S至B/S架構的案例情況,本文認為,C/S遷移至B/S架構至少存在以下兩個難點:
2.4.1 C/S客戶端能否部署在服務器
采用C/S架構的系統,其客戶端和服務器端承擔了相當的業務處理工作,因此,如何將客戶端中承擔業務處理的程序遷移至服務器?能否無縫遷移至服務器?遷移的工作量有多大?遷移后的程序能否和服務器端程序整合?這些就是C/S客戶端在遷移過程中會遇到的難點問題。
2.4.2 B/S架構能否達到C/S客戶端的性能
由于C/S中顯示部分由客戶端承擔,因此,C/S能有效調用本地資源,提供高質量、高速度、快速響應的客戶端顯示界面,而B/S架構雖然由性能強勁的服務器承擔幾乎所有的業務處理工作,但由于采用瀏覽器(Brower)作為客戶端,其本身的HTML語言自身存在的表現力不足、接口不夠強壯、反應不夠靈敏和缺乏趣味性的表現力能否達到C/S客戶端的顯示效果、響應速度?能否提供用戶與C/S客戶端媲美的使用體驗?是C/S遷移至B/S架構的過程中遇到的又一個難題。
3 遷移方案設計
3.1 無縫遷移
監控類軟件遷移至服務器,其三個組成部分,一是系統所用的數據庫,二是用驅動程序,三是用客戶端,均可無需太多修改的遷移至windows服務器,然后用ASP或PHP編寫網頁查詢頁面,將該數據庫中的歷史數據和當前數據傳至網頁頁面進行顯示,此方案只需修改數據庫的配置文件,增加一個網頁查詢程序,即可完整的實現原監控類軟件系統的所有功能,遷移時間短、工作量小,但由于程序內部沒有進行重構或優化,原有的進程阻塞、數據結構不合理、數據大量冗余、數據更新不方便等問題依然存在,同時由于業務處理工作仍由客戶端完成,服務器資源利用率不高,系統與服務器整合度不足反而降低了系統的運行效率。
3.2 部分代碼重用的逆向工程再造
逆向工程再造是軟件工程的一個重要的軟件開發思想,其通過對系統源代碼、界面和部分文檔的逆向思考,提取出該系統的需求說明,構造出系統的內部數據結構,分析出系統的數據庫設計,給出系統的類、模塊、方法等技術說明,然后在這些逆向文檔的基礎上對系統進行重新開發,開發過程中重用原系統的部分代碼和設計方法,能有效整合和優化新系統與新平臺的資源,提升新系統的運行效率,解決原系統存在的諸多問題,但由于要進行逆向構造,對技術人員的要求比較高,開發周期較長。
4 總結和展望
B/S架構雖然比C/S架構有著更多的優越性,但B/S架構也存在著一些問題,如B/S架構采用瀏覽器交換數據,由于瀏覽器本身安全性需要第三方安全軟件的保護,因此,采用B/S架構的系統安全性不如C/S高;其次,B/S架構在當前雖然已經采用了許多提高交互度的技術,如Ajax,但和C/S一整套的客戶應用相比還是太有限;再次,B/S的響應速度也暫無法和C/S相比。
對于電廠而言,信息的安全性和可靠性遠高于技術的先進性,因此,不能單純的將B/S架構視為監控類軟件的首選,而應該結合系統的應用范圍、安全要求、性能要求等進行綜合判斷,選擇最合適的系統架構。就如德國的架構大師Frank Buschman所說的一樣:沒有一種架構是萬能的。
隨著新一代的開發架構,如ERP、中間件、云架構等技術的興起,以及新的客戶端交互技術的出現,B/S架構會慢慢吸收眾家之所長,不斷完善,使自身被更多的用戶所喜愛。
參考文獻
[1]Gerard Bimont.火力發電廠電子監控技術[J].華東電力,2008(02):41-43
[2]王清,趙輝等.基于B/S、C/S模型協調控制的電廠遠程監控系統研究[J].天津理工大學學報,2009(10):36-38.
[3]佟鵬,高建強等.基于B/S模式的電廠性能監測系統研究[J].熱力發電,2003(10):67-69.79.
[4]郭小寶,王爽心.基于B/S結構的電廠經濟指標在線監測系統[J].自動化博覽,2005(05):56-58.
[5]Xu Zhigao,Gao Zhengping,Si Fengqi.Real-Time Information System of Power PlantBased on B/S Computing Mode[J].Journal of Southeast University(English Edition),2002(01):80-83.
作者單位
德宏師范高等專科學校 云南省德宏傣族景頗族自治州芒市 678400