楊云瑞,李 暢,程細(xì)南,黃宇魁(.廣東卓維網(wǎng)絡(luò)有限公司,58000.廣東匯源通集團(tuán)有限公司,58000)
?
電力需求響應(yīng)平臺的開發(fā)與應(yīng)用
楊云瑞1,李 暢1,程細(xì)南2,黃宇魁1
(1.廣東卓維網(wǎng)絡(luò)有限公司,5280002.廣東匯源通集團(tuán)有限公司,528000)
摘要:為加強(qiáng)我國電力需求側(cè)管理工作,保障電力供需總體平衡,促進(jìn)發(fā)展方式轉(zhuǎn)變,推動“十二五”節(jié)能減排目標(biāo)實(shí)現(xiàn),國家發(fā)改委與財政部于2012年底公布了首批4個城市電力需求側(cè)管理綜合試點(diǎn)城市,其中包括佛山、蘇州、北京與唐山。為此,佛山市人民政府印發(fā)了電力需求側(cè)管理城市綜合試點(diǎn)實(shí)施方案,明確了在推動此項(xiàng)工作中所負(fù)責(zé)的主要內(nèi)容,其中重點(diǎn)包括電力需求側(cè)管理平臺的開發(fā)和運(yùn)行?,F(xiàn)階段國內(nèi)電力需求響應(yīng)還在起步階段,實(shí)施較少,且未出臺相關(guān)的技術(shù)標(biāo)準(zhǔn),本系統(tǒng)圍繞此任務(wù),搭建了電力需求響應(yīng)平臺,并已經(jīng)在佛山市得到應(yīng)用。
關(guān)鍵詞:電力需求;B/S架構(gòu);信息管理
本系統(tǒng)使用JAVA+Mysql開發(fā),采用主流的B/S架構(gòu),即用戶端瀏覽器、WEB服務(wù)器、數(shù)據(jù)庫服務(wù)器組成的三層結(jié)構(gòu),為了提高系統(tǒng)的可擴(kuò)展性和可用性,本系統(tǒng)采用apache+tomcat形式構(gòu)建應(yīng)用服務(wù)器集群架構(gòu),如圖1所示。
圖1 集群配置邏輯圖
采用B/S架構(gòu)有以下優(yōu)點(diǎn):
1)解決C/S傳統(tǒng)模式的跨平臺難度;
2)客戶操作簡便。B/S模式客戶端只需要一個瀏覽器,無需像C/S模式那樣在系統(tǒng)上安裝應(yīng)用;
3)系統(tǒng)的維護(hù)、升級更方便;
4)業(yè)務(wù)擴(kuò)展簡單方便,通過增加網(wǎng)頁即可增加服務(wù)器功能。
圖2 電力需求響應(yīng)流程
圖3 需求響應(yīng)看板
圖4 產(chǎn)品管理功能界面
采用單個服務(wù)器,在處理不斷增長的負(fù)載時會出現(xiàn)很多問題,如1)升級過程繁瑣,機(jī)器切換回事服務(wù)暫時中斷,并造成原有計算資源的浪費(fèi);2)越高端的服務(wù)器,花費(fèi)的代價會越大;3)一旦服務(wù)器或應(yīng)用軟件失效,將會導(dǎo)致整個服務(wù)的中斷。為此我們通過引入高性能網(wǎng)絡(luò)或者局域網(wǎng)互聯(lián)的服務(wù)器集群架構(gòu)來實(shí)現(xiàn)服務(wù)的高伸縮性和高可用性。這種松耦合結(jié)構(gòu)與緊耦合的多處理器相比具有更好的伸縮性和更高的性價比。但是,如何在集群系統(tǒng)中實(shí)現(xiàn)并行網(wǎng)絡(luò)服務(wù),保證他對外是透明的同時保證良好的伸縮性和可用性是一個挑戰(zhàn)性問題,為此我們引入基于IP層和基于內(nèi)容請求分發(fā)的負(fù)載平衡調(diào)度解決方法,在Linux內(nèi)核中實(shí)現(xiàn)這些方法,將一組服務(wù)器構(gòu)成一個可可伸縮的、高可用的服務(wù)器集群,并稱之為Linux虛擬服務(wù)器(LVS, Linux Virtual Server)。在LVS集群中,服務(wù)器集群的結(jié)構(gòu)對客戶是透明的,客戶訪問集群提供的網(wǎng)絡(luò)服務(wù)就像訪問一臺高性能、高可用的服務(wù)器一樣??蛻舫绦虿皇芊?wù)器集群的影響,需作任何修改。系統(tǒng)的伸縮性通過在服務(wù)集群中透明地加入和刪除一個節(jié)點(diǎn)來達(dá)到,通過檢測節(jié)點(diǎn)或服務(wù)進(jìn)程故障和正確地系統(tǒng)重置來實(shí)現(xiàn)高可用性。
為使電力需求響應(yīng)順利實(shí)施,本系統(tǒng)有明確的職責(zé)分工,不同的機(jī)構(gòu)或者角色有不同的權(quán)限和任務(wù),需求響應(yīng)流程如圖2所示。
圖5 行業(yè)管理功能界面
圖6 區(qū)域管理功能界面
圖7 客戶基本信息管理功能界面
2.1 需求響應(yīng)看板
打開需求響應(yīng)系統(tǒng)首先展示在用戶面前的是需求響應(yīng)看板,在此頁面主要展示的有1)需求響應(yīng)事件日程表,可根據(jù)日歷或時間周期查看歷史需求響應(yīng)事件和實(shí)時需求響應(yīng)事件;2)需求響應(yīng)資源信息,可查看城市各個區(qū)域需求響應(yīng)資源信息,包括不同區(qū)域的客戶數(shù)量和削減潛力;3)實(shí)時負(fù)荷曲線,展示城市實(shí)時負(fù)荷曲線和基線,同時可選擇不同的客戶查看客戶的實(shí)時負(fù)荷曲線。
2.2 基礎(chǔ)信息管理
基礎(chǔ)信息管理模塊主要包括三個功能:產(chǎn)品管理、行業(yè)管理和區(qū)域管理。
1)產(chǎn)品管理主要功能是對需求響應(yīng)產(chǎn)品類型的增加、修改和刪除功能,每次需求響應(yīng)事件都有一個產(chǎn)品屬性,屬于特定的一個產(chǎn)品類型,如圖4所示。
2)行業(yè)管理功能主要是對參與需求響應(yīng)的用電客戶行業(yè)的劃分、編碼和行業(yè)基線方法的分配。不同的行業(yè)有不同的用電差異特性,在繪制其預(yù)測負(fù)荷曲線(也稱為基線)時需要不同的處理方法來保證預(yù)測的準(zhǔn)確性,所以可以根據(jù)行業(yè)用電特性選擇不同的基線算法。如圖5所示。
3)區(qū)域管理功能主要是對實(shí)施需求響應(yīng)的各城市各區(qū)域進(jìn)行統(tǒng)計、設(shè)置和管理。功能界面如圖6所示。
2.3 客戶信息管理
該功能可以查詢和修改所有簽約客戶的基本信息、響應(yīng)信息和接入資源管理??蛻艋拘畔⒐芾碇饕瞧髽I(yè)的聯(lián)系方式和相關(guān)資質(zhì)證明等信息;響應(yīng)信息管理就是企業(yè)參與電力需求響應(yīng)相關(guān)的數(shù)據(jù)信息;接入檔案管理主要是企業(yè)接入的表計、生產(chǎn)設(shè)備等計量裝置及用電設(shè)備的查詢和配置,如圖7所示。
2.4 需求響應(yīng)事件管理
需求響應(yīng)事件管理包括需求響應(yīng)事件創(chuàng)建和發(fā)布、歷史事件查詢功能。事件的發(fā)布功能只開放給供電局/售電公司在系統(tǒng)中創(chuàng)建新的需求響應(yīng)事件,事件的創(chuàng)建包括事件的類型設(shè)置和屬性設(shè)置,如圖8所示。
歷史事件查詢和管理以及實(shí)時監(jiān)測功能開放給所有需求響應(yīng)參與方,該功能可查看歷史事件以及正在進(jìn)行的事件詳情,包括事件的屬性和事件執(zhí)行時間段內(nèi)的實(shí)際負(fù)荷曲線。供電局/售電公司可查看所有參與需求響應(yīng)的客戶情況和削減詳情;電能服務(wù)商可以查看其所有簽約客戶的參與詳情;每個獨(dú)立客戶只可查看自己的事件參與詳情。
2.5 核算管理
該功能提供需求響應(yīng)事件的核算管理,包括收入核算和指支出核算,詳細(xì)記錄每次需求響應(yīng)事件的交易明細(xì)。每次需求響應(yīng)結(jié)束后,對事件的實(shí)際負(fù)荷削減量和應(yīng)補(bǔ)償金額進(jìn)行核算,功能界面如圖9所示。
圖9 核算管理功能界面
圖11 Ehcache 在應(yīng)用程序中的位置展示
3.1 系統(tǒng)技術(shù)架構(gòu)
本系統(tǒng)基于J2EE技術(shù)框架進(jìn)行構(gòu)建,同時集成Quartz定時任務(wù)框架和Ehcache緩存框架。整體框架如圖10所示。
1)數(shù)據(jù)訪問層:Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進(jìn)行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫,適用于一般增刪改查,對性能有要求的操作則使用JDBC處理;
2)控制層:直接使用Spring自帶的MVC框架;
3)展示層:使用JSP把前端和后臺分離,并引入Bootstrap框架。
本系統(tǒng)使用Quartz定時任務(wù)框架有以下優(yōu)點(diǎn):1))支持Cron表達(dá)式定義時間點(diǎn),同時也支持SimpleTrigger對應(yīng)時間點(diǎn),可以做到精確定義時間點(diǎn);2)支持集群,可以在多個服務(wù)器群(連同一個數(shù)據(jù)庫)中自動分配到不同的服務(wù)器上執(zhí)行;3)支持多種錯誤處理形式(如錯誤后下次不執(zhí)行、馬上重新執(zhí)行、下次繼續(xù)執(zhí)行等);4)支持多種漏觸發(fā)處理(如關(guān)機(jī)漏觸發(fā)情況)。
在系統(tǒng)應(yīng)用中,對同一數(shù)據(jù)、邏輯功能和用戶界面的多次請求是時經(jīng)常發(fā)生的事情,當(dāng)用戶基數(shù)很大時,如果每次請求都進(jìn)行處理,將消耗很多的資源,造成資源的浪費(fèi),同時也會造成系統(tǒng)的不穩(wěn)定。此時,緩存技術(shù)就得到了利用,使用緩存技術(shù)能有效降低對數(shù)據(jù)庫的訪問次數(shù),降低數(shù)據(jù)庫的訪問壓力,提高系統(tǒng)的服務(wù)能力。本系統(tǒng)集成Ehcache緩存架構(gòu)來緩解數(shù)據(jù)訪問壓力,保證系統(tǒng)穩(wěn)定。Ehcache是一種廣泛使用的開源Java分布式緩存,主要面向通用緩存。它具有內(nèi)存和磁盤存儲、緩存加載器、緩存擴(kuò)展、緩存異常處理程序等,并支持REST和SOAP api。如圖11所示是 Ehcache 在應(yīng)用程序中的位置展示。
3.2 系統(tǒng)優(yōu)化
系統(tǒng)的執(zhí)行效率搭建系統(tǒng)時必須要考慮的因素,利用有限的資源為更多客戶提供更好的服務(wù)是首要目標(biāo)。需求響應(yīng)系統(tǒng)涉及到一些復(fù)雜的計算過程,在計算過程中要保證客戶響應(yīng)速度,提高服務(wù)的質(zhì)量。當(dāng)多個用戶同時訪問應(yīng)用,就可能會造成操作阻塞,導(dǎo)致某些用戶等待時間很長甚至無法訪問應(yīng)用;如遇系統(tǒng)某一資源故障,可能會導(dǎo)致數(shù)據(jù)異?;蚱渌豢煽氐膯栴}。因此,系統(tǒng)應(yīng)該完善容錯機(jī)制,確保系統(tǒng)穩(wěn)定運(yùn)行。本系統(tǒng)優(yōu)化如下所述。
3.2.1 結(jié)合Apache和Tomcat實(shí)現(xiàn)集群和負(fù)載均衡
為增強(qiáng)擴(kuò)展性和可用性,優(yōu)化系統(tǒng)處理能力,本系統(tǒng)結(jié)合Apache+Tomcat構(gòu)建應(yīng)用服務(wù)器集群架構(gòu),該架構(gòu)有以下優(yōu)點(diǎn):
1)高可靠性(HA):利用集群管理軟件,當(dāng)主服務(wù)器故障時,備份服務(wù)器能夠自動接管主服務(wù)器的工作,并及時切換,以實(shí)現(xiàn)對用戶的不間斷服務(wù);
2)高性能計算(HP):即充分利用集群中每一臺計算機(jī)的資源,實(shí)現(xiàn)復(fù)雜運(yùn)算的并行處理,把負(fù)載壓力根據(jù)某種算法合理分配到集群中的每一臺計算機(jī)上,以減輕主服務(wù)器的壓力,降低對主服務(wù)器的硬件和軟件要求。
圖8 創(chuàng)建需求響應(yīng)事件
3)有效地擴(kuò)展服務(wù)器吞吐量,加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力,提高網(wǎng)絡(luò)的靈活性、可用性和延展性;
4)錯誤回復(fù);由于特殊原因,執(zhí)行某任務(wù)的資源出現(xiàn)故障,其他服務(wù)實(shí)體能繼續(xù)完成該服務(wù)器未能完成的部分,加強(qiáng)系統(tǒng)的容錯能力。
3.2.2 結(jié)合Mysql集群實(shí)現(xiàn)數(shù)據(jù)庫負(fù)載均衡
數(shù)據(jù)庫作為系統(tǒng)的核心,有著非常重要的作用,若發(fā)生系統(tǒng)故障,將嚴(yán)重影響系統(tǒng)的正常運(yùn)行,甚至帶來巨大的經(jīng)濟(jì)損失。本系統(tǒng)結(jié)合Mysql同步集群架構(gòu),可減輕服務(wù)器壓力,提高系統(tǒng)運(yùn)算能力,保證服務(wù)不間斷,并做到以下幾點(diǎn):
1)快速的自動失效切換;
2)靈活的分布式體系結(jié)構(gòu),沒有單點(diǎn)故障;
3)高吞吐量和低延遲;
4)可擴(kuò)展性強(qiáng),支持在線擴(kuò)容;
5)可以實(shí)現(xiàn)高可用性和負(fù)載均衡,實(shí)現(xiàn)對大型應(yīng)用的支持。
3.3 系統(tǒng)安全
互聯(lián)網(wǎng)時代,信息的安全至關(guān)重要。本系統(tǒng)從以下幾方面加強(qiáng)系統(tǒng)安全:
1)通過參數(shù)化的方式防止SQL注入;
2)前端js代碼校驗(yàn),加強(qiáng)對用戶輸入的驗(yàn)證;
3)采用監(jiān)聽器,清理登錄過期的用戶;
4)通過JAVA異常處理機(jī)制防止系統(tǒng)崩潰;
5)用戶密碼進(jìn)行加密處理,防止用戶資料泄漏。
本系統(tǒng)應(yīng)用于佛山市電力需求響應(yīng)項(xiàng)目中。系統(tǒng)中有系統(tǒng)管理員、電能服務(wù)商、電能服務(wù)商下屬企業(yè)、自主申報企業(yè)和手電公司五個角色。不同的角色在需求響應(yīng)平臺中有不同的權(quán)限和任務(wù),相互協(xié)調(diào),相互配合,共同完成從需求響應(yīng)事件發(fā)布到需求響應(yīng)核算的完整過程。
電力需求響應(yīng)平臺的搭建,為佛山市試點(diǎn)的順利實(shí)施奠定了基礎(chǔ),適應(yīng)了目前國家政策和現(xiàn)有市場的發(fā)展趨勢,形成了具有特色的需求響應(yīng)模式、體制和技術(shù)路線,為其他地區(qū)實(shí)施需求響應(yīng)起到了示范、參考作用。在系統(tǒng)開發(fā)過程中,既考慮了數(shù)據(jù)的安全性、準(zhǔn)確性和實(shí)時性,又考慮了算法的合理性和準(zhǔn)確性,使參與各方得到公平的核算結(jié)果,對需求響應(yīng)系統(tǒng)的關(guān)鍵技術(shù)進(jìn)行了探索和實(shí)踐,為實(shí)施需求響應(yīng)奠定了必要的技術(shù)基礎(chǔ)。
Development and application of electric power demand response platform
Yang Yunrui1,Li Chang1,Cheng Xi'nan2,Huang Yukui1
(1.Guangdong Zhuo Wei Network Co. Ltd.528000;2.Guangdong Huiyuan Holdings Limited,528000)
Abstract:In order to strengthen China's power demand side management,to protect the overall balance of power supply and demand, promoting the transformation of economic development mode,promote the realization of the "Twelfth Five Year" energy saving and emission reduction targets,the national development and Reform Commission and the Ministry of finance by the end of 2012 announced the first four cities in power demand side management integrated pilot cities,including Foshan,Suzhou,Beijing and Tangshan.Therefore,F(xiàn)oshan Municipal People's government issued the implementation program of the electric power demand side management of integrated and pilot city,clear in promoting the main content of this work is responsible for,which mainly includes the development and operation of power demand side management platform.Now domestic power demand response is still in the initial stage, a relatively small and not the introduction of relevant technical standards,the system on this task, and establish power demand response platform.It has been applied in the city of Foshan.
Keywords:power demand;B/S architecture;information management