Linux Memcached 配置

252 阅读1分钟

安装

apt install memcached php-memcached
php -i | grep memcached
service memcached status

默认配置

/etc/memcached.conf

-d # 以守护进程运行
-u memcache # 以该用户权限运行 默认 root
-l 127.0.0.1 # 监听来自该IP请求
-p 11211 # 监听端口
-m 64 # 分配内存 MB
-c 1024 # 允许并发连接数

在Linux服务器实际应用中,经常会有需要长时间执行的任务。这类任务若在前台运行,用户无法进行其他操作或者断开与服务器的连接,否则任务将被中止。此时适合使用守护进程。

  • ctrl + C 暂停前台运行任务
  • ctrl + Z 暂停前台任务转后台保留
  • command & 后台运行任务
  • fg $jobID 切换后台任务到前台继续
  • bg $jobID 后台任务继续运行
  • jobs 查看当前后台任务
  • nohub command 守护进程 运行任务 断开连接后继续运行
  • ps -aux | grep xxx 查看后台守护进程
  • kill $jobID / $pid 杀任务 / 进程

或通过命令行启动

$ memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid

安全配置

当公开memcahced服务时候,设置iptables规则阻挡入侵

// 放行
$ iptables -A INPUT -p tcp -s 127.0.0.1 --dport 11211 -j ACCEPT
$ iptables -A INPUT -p udp -s 127.0.0.1 --dport 11211 -j ACCEPT

// 阻止
$ iptables -I INPUT -p tcp --dport 11211 -j DROP
$ iptables -I INPUT -p udp --dport 11211 -j DROP

$ service iptables save
$ service iptables restart

# 当局域网内被放行
$ talnet 192.168.1.xxx 11211
$ status # 查看memcached状态
$ status items # 查看所有缓存项目
$ status cachedump 32 0 # 获得地址
$ get :status:264861539228401373:261588 # 读取值
set key flags exptime bytes [noreply]
value
  • key
  • flags 压缩内容 MEMCACHE_COMPRESSED
  • exptime 缓存时间 秒 0=永远
  • bytes 申请内存字节数
  • noreply 不需要返回数据 默认成功返回STORED,失败ERROR
  • value
get key key2 key3
delete key [noreplay]
  • DELETED 删除成功
  • ERROR 语法错误或删除失败
  • NOT_FOUND key 不存在
stats # 系统状态
stats items