1. 程式人生 > >分庫分表學習總結(2)——資料庫中介軟體MyCat學習總結之MyCat-Web原理介紹

分庫分表學習總結(2)——資料庫中介軟體MyCat學習總結之MyCat-Web原理介紹

Mycat是一個分庫分表的基於java開發的資料庫中介軟體,使用過程中需要有一個監控系統,mycat-web應運而生。mycat-web是一個使用SpringMVC + Mybatis的監控平臺,使用常用的監控系統協議SNMP-簡單網路管理協議(Simple Network Management Protocol),和RRD來進行監控介面的展示。相信用過catci的IT運維監控人員對於RRD再熟悉不過。

Mycat-web的原理介紹

Mycat-web的原理介紹

RRDtool是指Round Robin Database 工具(環狀資料庫)。Round robin是一種處理定量資料、以及當前元素指標的技術。想象一個周邊標有點的圓環--這些點就是時間儲存的位置。從圓心畫一條到圓周的某個點的箭頭--這就是指標。就像我們在一個圓環上一樣,沒有起點和終點,你可以一直走下去。過來一段時間,所有可用的位置都會被用過,該迴圈過程會自動重用原來的位置。這樣,資料集不會增大,並且不需要維護。我們使用RRDtool來處理RRD資料庫。使用它向RRD資料庫儲存提取資料。RRD適合儲存時間序列的資料。就是說你必須能夠在時間的幾個點上度量某些值,並提供這些資訊給RRDtool。如果你能夠做到這一點,RRDtool就能夠儲存它們。這些數值必須是數字,但是不一定要是整數。

Mycat-web的原理介紹

簡單網路管理協議(SNMP),由一組網路管理的標準組成,包含一個應用層協議(application layer protocol)、資料庫模型(database schema)和一組資源物件。該協議能夠支援網路管理系統,用以監測連線到網路上的裝置是否有任何引起管理上關注的情況。該協議是網際網路工程工作小組(IETF,Internet Engineering Task Force)定義的internet協議簇的一部分。SNMP的目標是管理網際網路Internet上眾多廠家生產的軟硬體平臺,因此SNMP受Internet標準網路管理框架的影響也很大。SNMP已經出到第三個版本的協議,其功能較以前已經大大地加強和改進了。

Mycat-web的原理介紹

Mycat-web的原理介紹

MIB,Management Information Base:管理資訊庫,由網路管理協議訪問的管理物件資料庫,它包括SNMP可以通過網路裝置的SNMP管理代理進行設定的變數。SMI,Structure of Management Information:管理資訊結構,用於定義通過網路管理協議可訪問的物件的規則。SMI定義在MIB中使用的資料型別及網路資源在MIB中的名稱或表示。

使用SNMP進行網路管理需要下面幾個重要部分:管理基站,管理代理,管理資訊庫和網路管理工具。

管理基站通常是一個獨立的裝置,它用作網路管理者進行網路管理的使用者介面。基站上必須裝備有管理軟體,管理員可以使用的使用者介面和從MIB取得資訊的資料庫,同時為了進行網路管理它應該具備將管理命令發出基站的能力。

管理代理是一種網路裝置,如主機,網橋,路由器和集線器等,這些裝置都必須能夠接收管理基站發來的資訊,它們的狀態也必須可以由管理基站監視。管理代理響應基站的請求進行相應的操作,也可以在沒有請求的情況下向基站傳送資訊。

MIB是物件的集合,它代表網路中可以管理的資源和裝置。每個物件基本上是一個數據變數,它代表被管理的物件的一方面的資訊。

最後一個方面是管理協議,也就是SNMP,SNMP的基本功能是:取得,設定和接收代理髮送的意外資訊。取得指的是基站傳送請求,代理根據這個請求回送相應的資料,設定是基站設定管理物件(也就是代理)的值,接收代理髮送的意外資訊是指代理可以在基站未請求的狀態下向基站報告發生的意外情況。

SNMP為應用層協議,是TCP/IP協議族的一部分。它通過使用者資料報協議(UDP)來操作。在分立的管理站中,管理者程序對位於管理站中心的MIB的訪問進行控制,並提供網路管理員介面。管理者程序通過SNMP完成網路管理。SNMP在UDP、IP及有關的特殊網路協議(如,Ethernet, FDDI, X.25)之上實現。

二、Mycat核心技術

Mycat-web的原理介紹