本教程适用于以下操作系统版本

  • Ubuntu 24.04(Noble Numbat)
  • Ubuntu 22.04(Jammy Jellyfish)
  • Ubuntu 20.04(Focal Fossa)
  • Ubuntu 18.04(Bionic Beaver)

本页内容

  • 环境要求
  • 在 Ubuntu 24.04 上安装 Memcached
  • 管理 Memcached 服务
  • 配置 Memcached
  • 安装 Memcached PHP 扩展
  • 添加 Python Memcached 支持
  • 添加 Perl Memcached 支持
  • 访问 Memcached 命令行
  • 总结

Memcached 是一个广泛使用的开源内存对象缓存系统,它通过在内存中缓存数据来加速动态 Web 应用。它专为基于 PHP 的 Web 应用(如 WordPress、Joomla、Drupal)以及基于 Python 的应用而设计。它通过将数据库查询结果或已渲染的网页临时存储在内存(RAM)中,从而提升数据库性能与页面加载速度,进而减少对数据库和硬盘的直接请求次数。

本教程将向你展示如何在 Ubuntu 24.04 LTS 服务器上安装 Memcached。

环境要求

  • 一台运行 Ubuntu 24.04 的服务器或桌面系统。
  • 你对服务器拥有 root 或 sudo 访问权限。

在 Ubuntu 24.04 上安装 Memcached

Memcached 软件包已在 Ubuntu 24.04 的软件仓库中提供。你可以运行以下命令来安装 Memcached:

sudo apt install memcached libmemcached-tools -y

Memcached 安装完成后,你可以使用以下命令查看其版本:

memcached --version

你应该会看到类似以下输出:

memcached 1.6.24

管理 Memcached 服务

memcached 服务由 systemd 负责启动与管理。

要启动 Memcached 服务,请运行以下命令:

sudo systemctl start memcached

若要让 Memcached 服务在系统重启后自动启动,请运行以下命令:

sudo systemctl enable memcached

你也可以使用以下命令查看 Memcached 服务的运行状态:

sudo systemctl status memcached

你应该会看到类似以下输出:

? memcached.service - memcached daemon
     Loaded: loaded (/usr/lib/systemd/system/memcached.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-05-29 11:03:38 UTC; 51s ago
       Docs: man:memcached(1)
   Main PID: 707 (memcached)
      Tasks: 10 (limit: 4557)
     Memory: 5.8M (peak: 5.8M)
        CPU: 53ms
     CGroup: /system.slice/memcached.service
             ??707 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -l ::1 -P /var/run/memcached/memcached.pid

May 29 11:03:38 server1 systemd[1]: Started memcached.service - memcached daemon.

在 Ubuntu 24.04 上安装并配置 Memcached 缓存

默认情况下,Memcached 监听 11211 端口。你可以使用以下命令进行检查:

ss -antpl | grep memcache

在以下输出中,你可以看到 Memcached 的监听端口:

LISTEN 0      1024                               127.0.0.1:11211      0.0.0.0:*    users:(("memcached",pid=707,fd=26))
LISTEN 0      1024                                   [::1]:11211         [::]:*    users:(("memcached",pid=707,fd=27))

配置 Memcached

Memcached 的配置文件位于 /etc/memcached.conf。如有需要,你可以编辑该配置文件来修改默认设置。

sudo nano /etc/memcached.conf

根据你的实际需求,修改以下各行:

## Specify the IP address on which Memcached listens on. 
-l 127.0.0.1

## Disable the UDP

-U 0

## Define the memory to store the cache.

-m 1000

保存并关闭文件,然后重启 Memcached 以使配置生效:

sudo systemctl restart memcached

安装 Memcached PHP 扩展

如果你使用的是基于 PHP 的应用,必须安装相应的 PHP 扩展才能在 Web 应用中使用 Memcached。你可以运行以下命令进行安装:

sudo apt install php-memcached -y

所有软件包安装完成后,使用以下命令启用 PHP 的 Memcached 模块:

sudo phpenmod memcached

接下来,重启 Apache 服务以使更改生效:

sudo systemctl restart apache2

添加 Python Memcached 支持

如果你使用的是基于 Python 的 Web 应用,必须在服务器上安装 Python 的 Memcached 库。

sudo apt install python3-pymemcache -y

添加 Perl Memcached 支持

如果你使用的是基于 Perl 的 Web 应用,则需要在服务器上安装 Perl 的 Memcached 库。

sudo apt install libcache-memcached-libmemcached-perl -y

访问 Memcached 命令行

你可以使用 telnet 命令在命令行中与 Memcached 进行交互。

sudo apt install telnet

运行 Telnet 命令以连接到 Memcached。其中 11211 是 Memcached 的端口号,如果你将其修改为了其他端口,请务必在此处一并调整。

telnet localhost 11211

你应该会看到类似以下输出:

Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

接下来,运行以下命令来获取 Memcached 服务的概览信息:

stats

你应该会看到类似以下输出:

STAT pid 707
STAT uptime 256
STAT time 1716980872
STAT version 1.6.24
STAT libevent 2.1.12-stable
STAT pointer_size 64
STAT rusage_user 0.023712
STAT rusage_system 0.052694
STAT max_connections 1024
STAT curr_connections 2
STAT total_connections 3
STAT rejected_connections 0
STAT connection_structures 3
STAT response_obj_oom 0
STAT response_obj_count 1
STAT response_obj_bytes 16384
STAT read_buf_count 2
STAT read_buf_bytes 32768
STAT read_buf_bytes_free 0
STAT read_buf_oom 0
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT cmd_meta 0

要退出统计信息提示符,请输入 'quit'。

quit

总结

你已成功在 Ubuntu 24.04 服务器上安装 Memcached,现在可以将它与 Web 应用配合使用以提升性能。如需了解更多信息,请访问 Memcached 官方文档。