Stories

Detail Return Return

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

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

安裝openEuler操作系統,請參考https://openeuler.org/zh/docs...
説明:
安裝方式建議選擇“Server with GUI”安裝方式。

配置編譯環境

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

  1. 安裝gcc,已安裝則跳過

    yum -y install gcc gcc-c++ kernel-devel 
  2. 安裝GNU make和automake、unzip、telnet,已安裝則跳過

    yum -y install make automake unzip telnet
  3. 安裝libevent和libevent-devel

    yum -y install libevent libevent-devel

獲取源碼

若您的服務器可以訪問網絡,執行 wget https://github.com/memcached/... 命令下載源碼。否則,請訪問 https://github.com/memcached/... 下載源碼並複製到服務器“/home”目錄。

編譯和安裝

以本地下載源碼並上傳到服務器為例説明編譯和安裝操作

  1. 解壓源碼包

    cd /home
    unzip 1.5.12.zip
  2. 進入“memcached-1.5.12”目錄

    cd memcached-1.5.12
  3. 配置Memcached

    sh autogen.sh
    ./configure --prefix=/opt/memcached

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

  4. 執行編譯

    make -j60

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

  5. 執行安裝

    make install
  6. 進入指定的Memcached安裝目錄“/opt/memcached”,若生成的“bin”目錄中出現“memcached”可執行文件,説明編譯安裝完成
  7. 配置環境變量

    a. 將以下命令添加至“/etc/profile”文件中

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

    b. 使環境變量生效

    source /etc/profile

運行和驗證

  • 使用命令啓動

    memcached -t 24 -p 11211 -u root -m 49152 -c 10240

    啓動命令參數説明如下表所示。

命令參數 説明 默認值
-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

相關鏈接:

  1. openEuler官網:www.openeuler.org/
  2. OS遷移專區: https://www.openeuler.org/zh/...
  3. openEuler兼容性列表:https://www.openeuler.org/zh/...
  4. openEuler遷移指南:https://www.openeuler.org/zh/...
user avatar xzqcsj Avatar chengdumeiyouni Avatar u_17470194 Avatar NobodyCares Avatar Skyrim-sssuuu Avatar ospo Avatar XY-Heruo Avatar liwen01 Avatar lfree Avatar apacheiotdb Avatar python-learn Avatar tdengine Avatar
Favorites 25 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.