初探 memcached

因为公司下一个项目要用到 Memcached 集群,所以学习下。。。

安装

brew install memcached
cp /usr/local/Cellar/memcached/1.4.24/homebrew.mxcl.memcached.plist ~/Library/LaunchAgents
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.memcached.plist

参数解释

/usr/bin/memcached -d -m 128 -l 192.168.1.1 -p 11211 -u httpd
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

查看状态

telnet 127.0.0.1 11211
stats

这些状态的说明如下:

参数名描述
pidmemcache 服务器的进程 ID
uptime服务器已经运行的秒数
time服务器当前的 unix 时间戳
versionmemcache 版本
pointer_size当前操作系统的指针大小(32 位系统一般是 32bit)
rusage_user进程的累计用户时间
rusage_system进程的累计系统时间
curr_items服务器当前存储的 items 数量
total_items从服务器启动以后存储的 items 总数量
bytes当前服务器存储 items 占用的字节数
curr_connections当前打开着的连接数
total_connections从服务器启动以后曾经打开过的连接数
connection_structures服务器分配的连接构造数
cmd_getget 命令(获取)总请求次数
cmd_setset 命令(保存)总请求次数
get_hits总命中次数
get_misses总未命中次数
evictions为获取空闲内存而删除的 items 数(分配给 memcache 的空间用满后需要删除旧的 items 来得到空间分配给新的 items)
bytes_read总读取字节数(请求字节数)
bytes_written总发送字节数(结果字节数)
limit_maxbytes分配给 memcache 的内存大小(字节)
threads当前线程数

安装 & 配置 php 扩展

brew install homebrew/php/php56-memcached 
php-fpm.restart 

查看 phpinfo,可以看到配置成功
954B3550-F804-4CDF-8E46-743F40D90BF0.png

未完待续