• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Dubbo的分布式能效管理系統(tǒng)的設(shè)計與實現(xiàn)

      2018-06-11 11:06:02琪,盧
      電子設(shè)計工程 2018年11期
      關(guān)鍵詞:中間件能效管理系統(tǒng)

      王 琪,盧 軍

      (武漢郵電科學研究院湖北武漢430074)

      隨著我國經(jīng)濟的快速增長,各項建設(shè)都取得了巨大的成就,但與此同時,也付出了巨大的資源與環(huán)境破壞的代價,兩者之間的矛盾日益尖銳,這種狀況與資源的不合理利用和能源的嚴重浪費直接相關(guān)[1]。國家“十三五”規(guī)劃強調(diào)所有的工廠與企業(yè)要綠色發(fā)展,促進人與自然的和諧共生。因此打造一個能效管理系統(tǒng)對工廠、企業(yè)的能源利用進行實時監(jiān)控,實現(xiàn)最大限度的能源利用,避免資源浪費是至關(guān)重要的。同時又考慮到企業(yè)和工廠的不斷發(fā)展,為了系統(tǒng)的持續(xù)可用性[4],實現(xiàn)一個基于分布式架構(gòu)的能效管理系統(tǒng)是非常有必要的。

      系統(tǒng)采用Java語言,基于Dubbo框架設(shè)計了一套集權(quán)限管理、設(shè)備管理、數(shù)據(jù)采集、數(shù)據(jù)分析、設(shè)備報警、報表產(chǎn)出以及日志記錄與一體的分布式架構(gòu)能效管理系統(tǒng),滿足企業(yè)的需求。

      1 相關(guān)技術(shù)概述

      1.1 Dubbo服務(wù)框架

      Dubbo是一個擴展性和靈活性都很好的服務(wù)管理框架[7]。其主要核心部件是服務(wù)運行容器、服務(wù)注冊中心、服務(wù)提供者、服務(wù)消費者、服務(wù)監(jiān)控中心。

      1.2 ZooKeeper概述

      ZooKeeper是為分布式應(yīng)用程序提供高性能協(xié)調(diào)服務(wù)的工具集合,它包含一個簡單的原語集,分布式應(yīng)用程序可以基于它實現(xiàn)配置維護、命名服務(wù)、分布式同步、組服務(wù)等,在本系統(tǒng)中被用作Dubbo的服務(wù)注冊中心,用以協(xié)調(diào)分布式應(yīng)用[10]。

      1.3 MySQL數(shù)據(jù)庫

      MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),因為其體積小、速度快、再加上開放源碼這一特點,很多網(wǎng)站在開發(fā)時都使用MySQL作為網(wǎng)站數(shù)據(jù)庫。

      2 系統(tǒng)設(shè)計

      2.1 系統(tǒng)整體架構(gòu)設(shè)計

      整個系統(tǒng)主要分為5層,分別為Webserver入口、控制層、中間件服務(wù)層、微服務(wù)層和數(shù)據(jù)存儲層??刂茖釉谡麄€系統(tǒng)中就是最大的服務(wù)消費者,調(diào)用所有提供者的服務(wù),返回前端Web頁面,中間件服務(wù)層就是對整個能效管理系統(tǒng)所用到的中間件管理,微服務(wù)層主是業(yè)務(wù)邏輯和系統(tǒng)功能需求的實現(xiàn),數(shù)據(jù)存儲層用來存儲、讀寫數(shù)據(jù)。系統(tǒng)整體設(shè)計架構(gòu)如圖1所示。

      圖1 能效管理系統(tǒng)整體設(shè)計架構(gòu)圖

      微服務(wù)層由基礎(chǔ)微服務(wù)、權(quán)限微服務(wù)、日志微服務(wù)、數(shù)據(jù)微服務(wù)、設(shè)備微服務(wù)、采集微服務(wù)、分析微服務(wù)、報警微服務(wù)、報表微服務(wù)組成。對于控制層Webserver來說,所有的微服務(wù)都是其服務(wù)提供者,自己是服務(wù)消費者。但在微服務(wù)層內(nèi)部,我們根據(jù)系統(tǒng)業(yè)務(wù)的實際需求,微服務(wù)之間也有服務(wù)提供者和服務(wù)消費者之分。每一個微服務(wù)既可以作為服務(wù)提供者也可以作為服務(wù)消費者。

      2.2 系統(tǒng)模塊結(jié)構(gòu)設(shè)計

      根據(jù)實際的需求分析,整個系統(tǒng)模塊設(shè)計如圖2所示。

      圖2 能效管理系統(tǒng)模塊結(jié)構(gòu)圖

      2.3 系統(tǒng)數(shù)據(jù)庫設(shè)計

      設(shè)計系統(tǒng)采用MySQL作為數(shù)據(jù)庫存儲業(yè)務(wù)數(shù)據(jù),Mongodb作為文件數(shù)據(jù)庫存儲文件,Redis作為輔助用來緩存數(shù)據(jù),減少數(shù)據(jù)庫的調(diào)用次數(shù),提高數(shù)據(jù)讀寫速度。系統(tǒng)將采用分庫設(shè)計,每個微服務(wù)使用自己獨立的數(shù)據(jù)庫,如圖3所示。

      圖3 能效管理系統(tǒng)數(shù)據(jù)庫設(shè)計圖

      每一個微服務(wù)對應(yīng)一個屬于自己的獨立數(shù)據(jù)庫,將自己的業(yè)務(wù)數(shù)據(jù)存到數(shù)據(jù)庫表中。同時為了提高系統(tǒng)讀取效率,將復(fù)雜、常用的數(shù)據(jù)存入Redis緩存中,若是需要直接從Redis中讀取,不再操作數(shù)據(jù)庫,提高系統(tǒng)讀寫速度。對于系統(tǒng)中的圖片、文檔等文件類型數(shù)據(jù),用Mongodb統(tǒng)一存取。

      3 系統(tǒng)實現(xiàn)

      根據(jù)對整個系統(tǒng)的設(shè)計,系統(tǒng)主要可以從以下4個方面來實現(xiàn),中間件服務(wù)的搭建,Webserver、微服務(wù)以及數(shù)據(jù)庫的實現(xiàn)。

      3.1 中間件服務(wù)搭建

      系統(tǒng)中用到的中間件主要是ZooKeeper與Dubbo,并且所有中間件服務(wù)都在Linux服務(wù)器上部署。

      3.1.1 ZooKeeper服務(wù)搭建

      在系統(tǒng)中ZooKeeper用作Dubbo的注冊中心,實現(xiàn)Dubbo服務(wù)提供者的注冊和服務(wù)消費者的訂閱,主要配置如圖4所示。

      圖4 ZooKeeper主要配置圖

      配置好之后,在ZooKeeper服務(wù)bin目錄下打開命令窗口輸入命令“./zkServer.sh start”后,ZooKeeper即可啟動。

      3.1.2 Dubbo服務(wù)搭建

      Dubbo是整個系統(tǒng)的基礎(chǔ),所有的微服務(wù)都是通過Dubbo來注冊和運行。Dubbo配置如圖5所示。

      圖5 Dubbo主要配置圖

      注冊中心地址就是之前搭建的ZooKeeper服務(wù)的地址,root和guest用戶是登錄到Dubbo調(diào)控中心的用戶名和密碼。將Dubbo服務(wù)放到tomact webapp目錄下,在bin目錄中打開命令窗口輸入命令“./startup.sh”即可啟動。

      3.2 Webserver服務(wù)實現(xiàn)

      Webserver是整個系統(tǒng)的服務(wù)消費者,它依賴所有的微服務(wù),以報警微服務(wù)為例,配置如圖6所示。

      3.3 微服務(wù)實現(xiàn)

      圖6 Webserver配置圖

      每個微服務(wù)只實現(xiàn)自己的功能,權(quán)限微服務(wù)用來控制登錄權(quán)限、展示界面和用戶管理;數(shù)據(jù)微服務(wù)用于管理KPI系數(shù)等系統(tǒng)預(yù)先導(dǎo)入的數(shù)據(jù);日志微服務(wù),詳細記錄系統(tǒng)登錄用戶的每一步操作;設(shè)備微服務(wù)管理系統(tǒng)中所有的水表、電表等儀器設(shè)備;采集微服務(wù)采集設(shè)備上報的數(shù)據(jù)給其他微服務(wù)使用并存進數(shù)據(jù)庫;分析微服務(wù)可以以圖標或點線圖形式展示給用戶設(shè)備數(shù)據(jù)對比等信息;報警微服務(wù)收到采集微服務(wù)上報的數(shù)據(jù)之后,與事先設(shè)置好的報警閾值進行對比,保障設(shè)備安全;報表微服務(wù),以excel或word方式導(dǎo)出整個廠區(qū)的能耗情況報表信息。

      每個微服務(wù)由Model、API、Server 3個工程組成,Model主要存放實體類,API存放該微服務(wù)所要用到的所有接口,Server存放接口實現(xiàn)類和各種配置文件,處理業(yè)務(wù)邏輯。這三個工程層層依賴,API需要依賴Model,Server需要依賴Model和API。每個微服務(wù)都需要通過Dubbo進行注冊。下面以報警微服務(wù)配置為例進行說明,如圖7所示。

      圖7 微服務(wù)配置圖

      3.4 數(shù)據(jù)庫實現(xiàn)

      系統(tǒng)采用分庫設(shè)計,不再是一庫多表,而是每個微服務(wù)對應(yīng)自己的數(shù)據(jù)庫,互不干擾,如圖8所示。

      圖8 系統(tǒng)數(shù)據(jù)庫實現(xiàn)圖

      3.5 系統(tǒng)功能展示

      根據(jù)上述幾個方面,將系統(tǒng)實現(xiàn)后,進行系統(tǒng)功能展示。

      3.5.1 系統(tǒng)登錄

      根據(jù)設(shè)定的角色和用戶名密碼判斷用戶是否能夠登錄,登錄界面如圖9所示。

      圖9 系統(tǒng)登錄界面圖

      3.5.2 系統(tǒng)能耗月度對比分析

      此功能在分析微服務(wù)中實現(xiàn),采集微服務(wù)采集到設(shè)備數(shù)據(jù)之后將數(shù)據(jù)推送給分析微服務(wù)。選中某一臺設(shè)備之后,將根據(jù)用戶選擇的月份以點線圖和圖表的方式將該設(shè)備數(shù)據(jù)展示出來,通過數(shù)據(jù)對比可以很清楚地了解每個月每臺設(shè)備的能耗情況,方便后期的能源調(diào)控,如圖10所示。

      圖10 系統(tǒng)能耗月度對比圖

      3.5.3 系統(tǒng)角色權(quán)限管理

      此功能在權(quán)限微服務(wù)里實現(xiàn),對于不同的角色,可以任意配置菜單,在該角色的用戶登錄之后,可以看到不同的界面和具有不同的操作權(quán)限,如圖11所示。

      4 系統(tǒng)測試

      系統(tǒng)測試是保證系統(tǒng)質(zhì)量和可靠性的關(guān)鍵步驟,是對系統(tǒng)開發(fā)過程中的系統(tǒng)分析、系統(tǒng)設(shè)計和實施的最后復(fù)查。

      圖11 系統(tǒng)角色權(quán)限管理圖

      根據(jù)分布式系統(tǒng)的特點,分別在兩臺機器A和B上啟動微服務(wù),A啟動基礎(chǔ)、權(quán)限、分析3個微服務(wù),Webserver和剩下的微服務(wù)都由B啟動,系統(tǒng)啟動成功。之后在B上也啟動權(quán)限微服務(wù),通過監(jiān)控中心和調(diào)控中心可以看到,當系統(tǒng)調(diào)用到權(quán)限微服務(wù)時,會根據(jù)負載均衡策略去調(diào)用A或B,系統(tǒng)運行正常。Dubbo監(jiān)控中心和調(diào)控中心如圖12、圖13所示。

      圖12 Dubbo監(jiān)控中心

      圖13 Dubbo調(diào)控中心

      5 結(jié)束語

      文中通過對能效系統(tǒng)需求的分析以及對未來發(fā)展趨勢的預(yù)測,設(shè)計和實現(xiàn)了一種基于Dubbo的分布式能效管理系統(tǒng)。系統(tǒng)采用了以Dubbo為基礎(chǔ)框架的分布式架構(gòu),采用微服務(wù)模式,降低了系統(tǒng)耦合,提高了系統(tǒng)性能,再加上監(jiān)控中心和治理中心的使用,方便了系統(tǒng)的后期維護或二次開發(fā),通過具體的應(yīng)用測試,展示了系統(tǒng)的可用性和使用價值。今后將主要關(guān)注系統(tǒng)性能優(yōu)化方面的問題,如數(shù)據(jù)庫的優(yōu)化、負載均衡的使用策略等,進一步提高系統(tǒng)的穩(wěn)定性、安全性,加深用戶體驗。

      參考文獻:

      猜你喜歡
      中間件能效管理系統(tǒng)
      基于James的院內(nèi)郵件管理系統(tǒng)的實現(xiàn)
      上海:穩(wěn)中有進 能效趨優(yōu)
      基于LED聯(lián)動顯示的違停管理系統(tǒng)
      RFID中間件技術(shù)及其應(yīng)用研究
      電子制作(2018年14期)2018-08-21 01:38:10
      基于VanConnect中間件的設(shè)計與開發(fā)
      電子測試(2018年10期)2018-06-26 05:54:02
      關(guān)注能效
      海盾壓載水管理系統(tǒng)
      中國船檢(2017年3期)2017-05-18 11:33:08
      中間件在高速公路領(lǐng)域的應(yīng)用
      基于RFID的倉儲管理系統(tǒng)實現(xiàn)
      淺談實現(xiàn)高能效制造的未來發(fā)展趨勢
      自動化博覽(2014年6期)2014-02-28 22:32:07
      烟台市| 曲松县| 前郭尔| 高州市| 南陵县| 抚顺县| 淳化县| 宁陕县| 仲巴县| 玛多县| 平谷区| 越西县| 天长市| 山东省| 牙克石市| 荔波县| 南召县| 三江| 丹阳市| 昂仁县| 漠河县| 资阳市| 隆尧县| 永定县| 兴安县| 芒康县| 湟中县| 周宁县| 宜宾市| 万州区| 施秉县| 扶风县| 观塘区| 饶阳县| 麦盖提县| 甘孜县| 右玉县| 舒兰市| 白沙| 衡阳市| 沁阳市|