• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Memcached 在電能質量實時數(shù)據(jù)傳輸中的應用研究

    2014-12-16 09:14:56胡世昊連志鵬
    江西電力 2014年4期
    關鍵詞:鍵值命令廠家

    胡世昊,連志鵬

    (國網(wǎng)江西省電力公司九江供電分公司,江西九江 332000)

    0 引言

    隨著各行業(yè)對電能質量的重視程度越來越高和電能質量監(jiān)測系統(tǒng)逐步普及,電能質量監(jiān)測技術已經(jīng)逐步向網(wǎng)絡化、信息化、標準化方面發(fā)展,國內外電能質量監(jiān)測系統(tǒng)發(fā)展十分迅速,在美國,電力士和美國電科院共同開發(fā)了PQView系統(tǒng);新加坡也建立了十分成熟全國性的電能質量監(jiān)測系統(tǒng);在國內,江蘇、廣東、云南、河南等地也建立了多個監(jiān)測點的電能質量監(jiān)測系統(tǒng),隨著不同廠家設備不斷加入,各種地市小監(jiān)測系統(tǒng)、專題電能質量分析系統(tǒng)、省級主站系統(tǒng)都紛紛建立,實時數(shù)據(jù)的共享和傳輸出現(xiàn)瓶頸。例如讓PMIS、GIS可視化系統(tǒng)快速獲取電能質量實時數(shù)據(jù)或者不同電能質量廠家互相讀取實時數(shù)據(jù),面對快速更新和波形數(shù)據(jù)時響應速度是最大問題,目前很難達到同一地區(qū)所有電能質量分析平臺的實時數(shù)據(jù)快速傳輸共享的要求。國內解決此類問題的主要方法是制定區(qū)域范圍內的標準來規(guī)范系統(tǒng),利用基于WebService的服務來完成,對于早期已經(jīng)安裝的系統(tǒng)重新執(zhí)行新的規(guī)范,升級系統(tǒng)需要大量的資金和人力物力,而且重新開發(fā)新的規(guī)約需要很長時間的規(guī)范和調試,對于非電能質量系統(tǒng)需要讀取電能質量系統(tǒng)數(shù)據(jù)的時候,制定的標準往往又很難滿足響應時間和內容要求。本文提出了描述采用Memcached高性能的分布式的內存對象緩存系統(tǒng),將電能質量常規(guī)的實時數(shù)據(jù)通過Memecached 進行內存映射和,快速的實現(xiàn)不同系統(tǒng)間的數(shù)據(jù)共享。

    1 Memcached的電能質量系統(tǒng)應用

    1.1 Memcached介紹

    Memcached 是一個高性能的分布式內存對象緩存系統(tǒng),用于動態(tài)Web 應用和快速交換的實時數(shù)據(jù)以減輕數(shù)據(jù)庫負載。它通過在內存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提供動態(tài)、數(shù)據(jù)庫驅動系統(tǒng)的速度。Memcached基于一個存儲鍵/值對的hashmap。并通過memcached 協(xié)議與守護進程通信。為了提高性能,memcached中保存的數(shù)據(jù)都存儲在memcached 內置的內存存儲空間中。由于數(shù)據(jù)僅存在于內存中,因此重啟memcached、重啟操作系統(tǒng)會導致全部數(shù)據(jù)消失。另外,內容容量達到指定值之后,就基于LRU(Least Recently Used)算法自動刪除不使用的緩存。memcached 本身是為緩存而設計的服務器,因此并沒有過多考慮數(shù)據(jù)的永久性問題。

    1.2 Memcached接口與協(xié)議

    memcached 是一套分布式的快取系統(tǒng),memcached API 使用三十二位元的循環(huán)冗余校驗(CRC-32)計算鍵值后,將資料分散在不同的機器上。當表格滿了以后,接下來新增的資料會以LRU機制替換掉。由于memcached 通常只是當作快取系統(tǒng)使用,一般只用來接口快速變化的實時數(shù)據(jù)接口,memcached通信是基于文本行簡單協(xié)議,在電能質量系統(tǒng)間通信時,可以使用web 調用、telnet 迅速讀取數(shù)據(jù)。

    1.3 Memcached的應用現(xiàn)狀分析

    許多分布式系統(tǒng)應用都將數(shù)據(jù)保存到RDBMS中,應用服務器從中讀取數(shù)據(jù)并在瀏覽器中顯示。但隨著數(shù)據(jù)量的增大、訪問的集中,就會出現(xiàn)RDBMS的負擔加重、數(shù)據(jù)庫響應惡化、系統(tǒng)顯示延遲等重大影響。memcached一般的使用目的是,通過緩存數(shù)據(jù)庫查詢結果,減少數(shù)據(jù)庫訪問次數(shù),以提高動態(tài)應用的速度、提高可擴展性。Memcached 目前已經(jīng)廣泛應用于具有國外mixi、hatena、Facebook、Vox等大型web系統(tǒng)中。隨著Web和WebService服務等在電力系統(tǒng)中的廣泛應用,系統(tǒng)間通訊、實時數(shù)據(jù)的快速交換無法避免。例如,電能質量監(jiān)測系統(tǒng)中,當幾百個監(jiān)測點的三相電壓、電流、諧波、功率、10周波實時波形等數(shù)據(jù)在系統(tǒng)間實現(xiàn)每3 s 實時交換,數(shù)據(jù)量十分龐大,勢必引起通訊前置機、系統(tǒng)服務器的延遲,造成實時數(shù)據(jù)滯后。利用memcached 如何解決電能質量系統(tǒng)間大數(shù)據(jù)量實時交換問題是本文研究的主要內容。

    2 基于Memcached的數(shù)據(jù)快速傳輸交換

    2.1 包含Memcached緩存系統(tǒng)的電能質量系統(tǒng)架構

    如圖1,采用memcache 映射固定的內存空間存儲實時數(shù)據(jù),并且按照固定周期如3 s 進行快速更新,不同廠家可以快速獲取各自的時時數(shù)據(jù)。

    圖1 基于memcache電能質量系統(tǒng)架構

    如圖2,相對于各個廠家而言,自身系統(tǒng)既是客戶端也是服務器端,自身利用分布式算法映射自身系統(tǒng)的數(shù)據(jù),滿足其它系統(tǒng)進行數(shù)據(jù)共享的要求。同時具有客戶端,具備讀取其它系統(tǒng)數(shù)據(jù)的功能。從而滿足不同廠家、不同應用程序能快速交換和共享實時數(shù)據(jù)的要求。

    圖2 各廠家系統(tǒng)memcached的應用

    2.2 Memcached與電能質量部分數(shù)據(jù)的映射

    memcached采取的內存映射來存儲,在實際過程中與平臺和開發(fā)語言無關,所有數(shù)據(jù)只需要知道鍵值和在內存大小即可。表1列舉了部分電能質量數(shù)據(jù)的的信息,不同平臺可以通過操作鍵值來快速交換數(shù)據(jù)。

    表1 部分常規(guī)穩(wěn)態(tài)數(shù)據(jù)定義

    2.3 Memcached在電能質量系統(tǒng)的綜合應用

    memcached 采取的內存映射來存儲,在實際使用過程中與平臺和開發(fā)語言無關,所有數(shù)據(jù)我們只需要知道鍵值和在映射內存占位大小即可,同時,所有電能質量數(shù)據(jù)在計算機系統(tǒng)中都不可能用整數(shù)來完整描述,必須用浮點數(shù)或浮點數(shù)序列來描述,如表1 中舉例,A 相電壓有效值,任何平臺和開發(fā)語言直接讀取32 位內存可以直接轉換為實際的浮點數(shù)據(jù)。

    如圖3 體系結構相當容易理解。建立了一個Web 層,例如假設其中包括一些Apache 實例。下一層是應用程序本身。這一層通常運行于Apache Tomcat 或其他開源應用服務器之上。再下面一層是配置memcached 實例的地方,即應用服務器與數(shù)據(jù)庫服務器之間。在使用這種配置時,需要采用稍微不同的方式來執(zhí)行數(shù)據(jù)庫的讀取和寫入操作。

    圖3 基于memcache應用程序體系架構

    2.4 Memcached的常規(guī)操作

    2.4.1 讀操作

    執(zhí)行讀取操作的順序是從服務交互層如WEB層獲取請求(需要執(zhí)行一次數(shù)據(jù)庫查詢)并檢查之前在緩存中存儲的查詢結果。如果我找到所需的值,則返回它。如果未找到,則執(zhí)行查詢并將結果存儲在緩存中,然后再將結果返回給服務交互層。

    2.4.2 寫操作

    將數(shù)據(jù)寫入到數(shù)據(jù)庫中時,首先需要執(zhí)行數(shù)據(jù)庫寫入操作,然后將之前緩存的任何受此寫入操作影響的結果設定為無效。此過程有助于防止緩存和數(shù)據(jù)庫之間出現(xiàn)數(shù)據(jù)不一致性。

    2.4.3 安裝操作

    Memcached相對而言安裝非常簡單,源文件也非常小比如我們獲取版本為1.4.1 的版本文件,將其放入應用程序目錄下,在代碼中嵌入如下命令即可:

    2.4.4 連接操作

    上文已經(jīng)簡單描述過,所有不同系統(tǒng)既是客戶端也是服務器端,不同系統(tǒng)之間都可以簡單的通過telnet命令連接后,即可進行其他所有操作。

    2.4.5 啟動操作

    會以守護程序的形式啟動memcached,為其分配2GB 內存,并指定監(jiān)聽localhost,即端口11211(默認),實際操作過程中可以根據(jù)需要修改這些值。

    2.4.6 常見命令

    set 命令用于向緩存添加新的鍵值對。如果鍵已經(jīng)存在,則之前的值將被替換。

    add 命令僅當緩存中不存在鍵時,add 命令才會向緩存中添加一個鍵值對。

    replace命令僅當鍵已經(jīng)存在時,replace 命令才會替換緩存中的鍵。

    get 命令用于檢索與之前添加的鍵值對相關的值。您將使用get 執(zhí)行大多數(shù)檢索操作。

    delete 命令是delete。delete 命令用于刪除memcached 中的任何現(xiàn)有值。

    2.5 電能質量Memcached的操作實例介紹

    在某廠家系統(tǒng)中使用了memcached,現(xiàn)在需要將A相電壓實時數(shù)據(jù)通過memcached共享其它系統(tǒng):

    如果使用set 命令正確設定了鍵值對,服務器將使用單詞STORED 進行響應。示例向緩存中添加了一個鍵值對,其鍵為RMSVoltagePhaseA,如表1中描述,為A 相電壓有效值,其值為5 948 V。并將過期時間設置為0,這將向memcached 通知希望將此值存儲在緩存中直到刪除它為止。

    其它廠家系統(tǒng)需要讀取此數(shù)據(jù)時,只需要連接memcached,通過命令get RMSVoltagePhaseA,若此值存在,不同開發(fā)平臺將會返回不同約定的32位內存值,如本例中的5.948 kV電壓有效值。

    3 結語

    電能質量實時數(shù)據(jù)的瀏覽和共享在實際應用比較普遍,本文研究分布式緩存系統(tǒng)memcached 對實時數(shù)據(jù)快速共享和傳輸?shù)淖饔?通過對比傳統(tǒng)的WebService 服務等,memcached 具有響應速度快、減輕服務器負載、內存直接共享等優(yōu)點,在電能質量監(jiān)測系統(tǒng)中結合memcacahed 與通訊規(guī)約、數(shù)據(jù)庫、操作系統(tǒng)、網(wǎng)絡通訊的聯(lián)系進行了深入研究并給出操作方案介紹,可直接應用于系統(tǒng)的開發(fā)和擴展中。

    [1]南鐵,李先國.基于.NET Cache+Memcached Web 緩存技術的研究與應用[J].科學技術與工程,2011,11(31)

    [2]張志生,孔德紅.PQDIF 規(guī)范在電能質量監(jiān)測中的應用[J].南方電網(wǎng)技術,2009,3(S1):178-180.

    [3]何秀月.電能質量在線監(jiān)控技術的探討[J].科技創(chuàng)新導報,2011,29(S1):178-180.

    [4]許中,陳雁,李絲媛.廣州電網(wǎng)電能質量在線監(jiān)測系統(tǒng)及其高級應用[J].供用電,2012,29(S4).

    [5]趙逸眾,基于Web 的電能質量監(jiān)測與診斷分析系統(tǒng)的研究[d].北京:華北電力大學電力系統(tǒng)及自動化200601(01).

    [6]薛獻鵬,彭明田,賀懷清.基于Memcached 的日歷搜索引擎系統(tǒng)優(yōu)化設計與實現(xiàn)[j].計算機應用2011,31(3).

    猜你喜歡
    鍵值命令廠家
    只聽主人的命令
    非請勿進 為注冊表的重要鍵值上把“鎖”
    百萬級水產(chǎn)經(jīng)銷商是怎么練成的!哪種經(jīng)銷商最受廠家青睞,最易獲取資源?
    移防命令下達后
    一鍵直達 Windows 10注冊表編輯高招
    電腦愛好者(2017年9期)2017-06-01 21:38:08
    美小運載廠家簽多次發(fā)射協(xié)議
    太空探索(2016年12期)2016-07-18 11:13:43
    “上下床廠家”玩轉“互聯(lián)網(wǎng)+”
    尿素廠家的長期虧損牌能打多久
    這是人民的命令
    藍色命令
    永安市| 潮州市| 安远县| 荔波县| 喀喇| 班戈县| 闻喜县| 镇坪县| 苍南县| 射阳县| 余江县| 芮城县| 松江区| 嵊州市| 横峰县| 郑州市| 永济市| 汽车| 永宁县| 汾西县| 杭锦旗| 阿勒泰市| 九龙县| 巴东县| 九台市| 北京市| 望谟县| 光山县| 三江| 新干县| 龙井市| 久治县| 巴东县| 凤庆县| 哈尔滨市| 凉山| 驻马店市| 承德市| 玉环县| 新河县| 尉氏县|