天天看點

Memcached 1.5.12 移植指南(openEuler 20.03 LTS SP1)

作者:openEuler

Memcached 1.5.12 移植指南

介紹

簡要介紹

Memcached是LiveJournal旗下Danga Interactive公司以Brad Fitzpatric為首開發的一款高性能分布式記憶體對象緩存系統,通過緩存資料庫查詢結果,減少資料庫通路次數,來提高動态Web應用的通路速度、提高可擴充性。

Memcached的官方連結:

https://memcached.org/

開發語言:C

一句話描述:分布式記憶體對象緩存系統

環境要求

硬體要求

硬體要求如下表所示。

項目 說明
伺服器 TaiShan 200伺服器(型号2280)
CPU 鲲鵬920 5250處理器
磁盤分區 對磁盤分區無要求

作業系統要求

作業系統要求如下表所示。

項目 版本
openEuler 20.03 LTS SP1 aarch64
Kernel 4.19

查詢目前系統版本資訊

cat /etc/os-release
           
Memcached 1.5.12 移植指南(openEuler 20.03 LTS SP1)

安裝openEuler作業系統,請參考https://openeuler.org/zh/docs/20.03_LTS_SP1/docs/Installation/installation.html

說明: 安裝方式建議選擇“Server with GUI”安裝方式。

配置編譯環境

編譯Memcached需要準備C編譯器、GNU、make、automake、libevent和libevent-devel。

安裝gcc,已安裝則跳過

yum -y install gcc gcc-c++ kernel-devel

安裝GNU make和automake、unzip、telnet,已安裝則跳過

yum -y install make automake unzip telnet

安裝libevent和libevent-devel

yum -y install libevent libevent-devel

擷取源碼

若您的伺服器可以通路網絡,執行 wget https://github.com/memcached/memcached/archive/1.5.12.zip 指令下載下傳源碼。否則,請通路 https://github.com/memcached/memcached/archive/1.5.12.zip 下載下傳源碼并複制到伺服器“/home”目錄。

編譯和安裝

以本地下載下傳源碼并上傳到伺服器為例說明編譯和安裝操作

解壓源碼包

cd /home

unzip 1.5.12.zip

進入“memcached-1.5.12”目錄

cd memcached-1.5.12

配置Memcached

sh autogen.sh

./configure --prefix=/opt/memcached

可在該步驟指定Memcached安裝目錄,例如本文指定安裝在“/opt/memcached”目錄下。

執行編譯

make -j60

-j60參數充分利用多核CPU優勢,加快編譯速度。

執行安裝

make install

進入指定的Memcached安裝目錄“/opt/memcached”,若生成的“bin”目錄中出現“memcached”可執行檔案,說明編譯安裝完成

配置環境變量

a. 将以下指令添加至“/etc/profile”檔案中

export PATH=/opt/memcached/bin/:$PATH

b. 使環境變量生效

source /etc/profile

運作和驗證

  • 使用指令啟動
  • memcached -t 24 -p 11211 -u root -m 49152 -c 10240
  • 啟動指令參數說明如下表所示。
Memcached 1.5.12 移植指南(openEuler 20.03 LTS SP1)
指令參數 說明 預設值
-t 線程數。 4
-p 監測的TCP端口。 11211
-u 指定使用者啟動。 預設不能用root使用者啟動程序
-m 配置設定給Memcached的記憶體大小。機關:MB。 64M
-c 最大并發連接配接數。 1024
-d 背景啟動一個守護程序。 -
  • 另外啟動一個Shell視窗,連接配接到Memcached
  • telnet 127.0.0.1 11211
  • 建立連接配接之後,可使用stats指令擷取到Memcached服務端的統計資訊
  • stats

常用的stats指令如下表所示。

指令 功能
stats 顯示Memcached總體狀态資訊,包括啟動時間、存儲資料量、緩存命中率、目前連接配接數等。
stats items 輸出各個slab中item的資訊。
stats slabs 輸出更詳細的slab資訊。
stats sizes 顯示所有item的大小和個數。
stats cachedump 導出下的資料,是輸出個數,若傳入0則輸出該slab下所有資料。
stats detail 設定(on/off)或顯示(dump)詳細操作記錄,如get/set操作。
flush_all 使記憶體中所有item失效,該操作并不會暫停服務端,因為不會真正釋放記憶體空間,而是将現有item标記為失效狀态。

說明: 如需退出Telnet連接配接可執行quit指令。

quit
           

除Telnet連接配接Memcached服務擷取資料資訊以外,源碼中還提供了一些工具腳本,可以直接使用,如memcached-tool,位于源碼中的scripts目錄下。

memcached-tool的使用方法如下表所示。

指令 功能
./memcached-tool localhost display 顯示slabs資訊
./memcached-tool 10.0.0.5:11211 display 顯示slabs資訊
./memcached-tool 10.0.0.5:11211 stats 顯示Memcached統計資訊
./memcached-tool 10.0.0.5:11211 settings 顯示Memcached設定資訊
./memcached-tool 10.0.0.5:11211 sizes 顯示items的大小和個數
./memcached-tool 10.0.0.5:11211 dump [limit] 導出緩存中的Keys和Values