91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Memcache如何全面解析并實現zabbix監控

發布時間:2021-11-05 10:19:54 來源:億速云 閱讀:140 作者:柒染 欄目:建站服務器

這篇文章將為大家詳細講解有關Memcache如何全面解析并實現zabbix監控,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

Memcached是什么?
   Memcached是一個分布式內存緩存服務器,用于緩存數據庫查詢結果,減少數據庫的訪問次數,提高動態web頁面的速度及擴展性。
Memcached的特征
   a.協議簡單,Memcached使用簡單的文本行協議
   b.基于libevent的事件處理
   c.內置內存存儲方式
   d.每個Memcached服務器之間互不通信
   e.Memcached使用key-value的方式進行儲存

Libevent: Libevent 是一個用C語言編寫的、輕量級的開源高性能事件通知庫,主要有以下幾個亮點:事件驅動( event-driven),高性能;輕量級,專注于網絡,不如 ACE 那么臃腫龐大;源代碼相當精煉、易讀;跨平臺,支持 Windows、 Linux、 *BSD 和 Mac Os;支持多種 I/O 多路復用技術, epoll、 poll、 dev/poll、 select 和 kqueue 等;支持 I/O,定時器和信號等事件;注冊事件優先級。
Libevent 已經被廣泛的應用,作為底層的網絡庫;比如 memcached、 Vomit、 Nylon、 Netchat等等。
Memcached的內存存儲
由于傳統的內存分配使用malloc函數和free函數進行內存分配,導致內存產生的大量的內存碎片,無法被利用。
Memcached采用Slab Allocator實現內存的分配。
Slab Allocator的原理:按照預先規定將內存分配成大小特定且不等的內存快(chunk),并把大小相等的內存快組織成組(slab class)。
Memcached如何通過Slab Allocator實現數據的緩存?
當一個數據到達Memcached時,Memcached根據數據的大小去選擇大小適宜的slab,在通過chunk的空閑列表,選中出chunk將數據緩存上去。
Memcached在分配內存過程中怎么實現不等長的內存劃分呢?
Memcached在啟動時會指定growth factor因子,來控制每個slab之間的差異,并不是隨意進行劃分的。如:growth factor因子為2,前一個slab class中的每個chunk的大小為2,則下一個slab class中的每一個chunk的大小為4,就這樣一次類推。默認Memcahed設置中growth factor的值為1.25

啟動時指定Memcached的growth factor因子
[root@COS_Clone1 ~]#memcached -f 2 -vv
-f:指定growth factor因子-vv:查看過程12341234

Memcached的超時原理
Memcached怎么去監控自己在內存中緩存的資源是否過期,其采用Lazy Expiration,Memcached不會自動的去監控并檢測緩存在內存中的內容是否過期,當一個請求到來時,Memcached才會去檢查請求資源的記錄時間戳,檢查記錄是否過期,如沒有過期再進行返回。
Memcached的刪除的原理
Memcached在內存中緩存數據時,首先選用已經超時的空間來記錄本次要緩存的記錄,若內存空間不足以緩存時,Memcached會使用LRU(最近最少未被使用算法)來將資源空間分配給新的記錄。
Memcached的分布式調度
Memcache如何全面解析并實現zabbix監控
假如web服務器要緩存一個數據庫到Memcached服務器,那么要緩存在那個上呢?
其實Memcached API提供了幾個調度算法
a.余數計算:
把將要緩存在Memcached上的記錄的key值進行C32計算,再將計算結果與node數+1進行取余,得到的結果就是此數據要緩存的Memcached服務器。
缺點:
當進行增加或者移除節點時,緩存數據進行重組,無法獲取與保存時相同的服務器,從而影響緩存的命中率。
b.Consistent hash:
將node節點的主機名進行HASH計算,并配置在0~2^23的圓上,再將資源的key值進行HASH計算,并映射在圓上,從映射位置順時針查找,找到的第一個服務器就將數據保存在此服務器上。
Memcache如何全面解析并實現zabbix監控
Memcached的安裝方式

下載方式:
[root@COS_Clone1 ~]#wget http://memcached.org/files/memcached-1.4.36.tar.gz安裝:
[root@COS_Clone1 ~]#tar -xzf memcached-1.4.36.tar.gz [root@COS_Clone1 ~]#mkdir /usr/local/memcached[root@COS_Clone1 ~]#yum install libeven-devel[root@COS_Clone1 ~]#cd memcached-1.4.36[root@COS_Clone1 memcached-1.4.36]# ./configure --prefix=/usr/local/memcached --bindir=/usr/local/bin --sbindir=/usr/local/sbin [root@COS_Clone1 memcached-1.4.36]#make && make install123456789123456789

Memcached的啟動

[root@COS_Clone1 ~]#memcached -p 20001 -m 64m -d11

Memcached狀態查詢

[root@COS_Clone1 bin]# memcached-tool 127.0.0.1:11211 stats#127.0.0.1:11211   Field       Value
         accepting_conns           1
               auth_cmds           0
             auth_errors           0
                   bytes           0
              bytes_read           7      讀了多少字節
           bytes_written           0      寫了多少字節
              cas_badval           0
                cas_hits           0
              cas_misses           0
               cmd_flush           0
                 cmd_get           0      進行了多少次獲取
                 cmd_set           0      進行多少次插入
             conn_yields           0
   connection_structures          11
        curr_connections          10
              curr_items           0
               decr_hits           0
             decr_misses           0
             delete_hits           0
           delete_misses           0
               evictions           0
                get_hits           0        命中多少次
              get_misses           0
               incr_hits           0
             incr_misses           0
          limit_maxbytes    67108864
     listen_disabled_num           0
                     pid        4465
            pointer_size          64
           rusage_system    0.035994
             rusage_user    0.000999
                 threads           4
                    time  1495460002
       total_connections          11
             total_items           0       內存中多少條記錄
                  uptime          35
                 version       1.4.41234567891011121314151617181920212223242526272829303132333435363738394012345678910111213141516171819202122232425262728293031323334353637383940

使用zabbix監聽memcached
監聽數據:命中多少,總過多少資源,多少次獲取,多少次進行添加,讀取字節書,寫入字節數
1.在Memached的主機上安裝zabbix

[root@COS_Clone1 ~]# yum install zabbix zabbix-agent[root@COS_Clone1 ~]#vim /etc/zabbix_agent.conf
    UserParameter=memcached.bytes_read[*],/usr/bin/memcached-tool $1:$2 stats |  grep "bytes_read" | awk '{print $2}'
    UserParameter=memcached.bytes_written[*],/usr/bin/memcached-tool $1:$2 stats |  grep "bytes_written" | awk '{print $2}'
    UserParameter=memcached.cmd_get[*],/usr/bin/memcached-tool $1:$2 stats |  grep "cmd_get" | awk '{print $2}'
    UserParameter=memcached.cmd_set[*],/usr/bin/memcached-tool $1:$2 stats |  grep "cmd_set" | awk '{print $2}'
    UserParameter=memcached.get_hits[*],/usr/bin/memcached-tool $1:$2 stats |  grep "get_hits" | awk '{print $2}'
    UserParameter=memcached.total_items[*],/usr/bin/memcached-tool $1:$2 stats |  grep "total_items" | awk '{print $2}'1234567812345678

2.在另一臺主機上安裝zabbix-server并啟動在web頁面進行配置
configure->host->item(memcached host)
定義item:
Memcache如何全面解析并實現zabbix監控
Memcache如何全面解析并實現zabbix監控
Memcache如何全面解析并實現zabbix監控
定義Graphs
Memcache如何全面解析并實現zabbix監控
測試結果
Memcache如何全面解析并實現zabbix監控

關于Memcache如何全面解析并實現zabbix監控就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

错那县| 江门市| 布尔津县| 龙南县| 武胜县| 通江县| 龙门县| 濮阳市| 和龙市| 大港区| 乐至县| 西城区| 隆回县| 岳普湖县| 花垣县| 镇沅| 杭锦后旗| 石渠县| 鄂托克旗| 彭州市| 加查县| 泽普县| 惠安县| 霍山县| 十堰市| 宜春市| 农安县| 开原市| 北辰区| 中宁县| 乐至县| 汕头市| 鄂托克旗| 山丹县| 封开县| 通山县| 金寨县| 拜城县| 洛阳市| 西乌珠穆沁旗| 邢台县|