php memcache内存大小,使用 PHP 获取 Memcache 内存缓存的运行状态以及各个参数的中文含义 - 文章教程...

Memcache 非常的好用,而且运行速度快功能丰富,唯一不好的就是查看其运行状态有点蒙,可以通过命令行查看其运行状态,也可以通过安装相关的软件来查看,如果您想自己做一个 Memcache 管理器,那么这篇文章获取对你很有用。

d7a73655fdfebaa188aee4e6d5c9d892.png

PHP 查看

你需要安装 Memcache 的 PHP 扩展,并重启 Web 服务,使用下面的代码可获取到状态信息:

$mem =new Memcache;

$mem->connect("127.0.0.1",11211);

$status=$mem->getstats();

foreach($status as $key=>$value)

print "$key $value\n";

$mem->close();

命令行查看

当 Memcache 启动后,我们可以通过下面的命令连接上 Memcache:

telnet 127.0.0.1 11211

Memcache 命令

下面是一些主要用到的命令,具体详细情况请查阅官方文档 doc/protocol.txt。

Command

Description

Example

get

Reads a value

get mykey

set

Set a key unconditionally

set mykey 0 60 5

add

Add a new key

add newkey 0 60 5

replace

Overwrite existing key

replace key 0 60 5

append

Append data to existing key

append key 0 60 15

prepend

Prepend data to existing key

prepend key 0 60 15

incr

Increments numerical key value by given number

incr mykey 2

decr

Decrements numerical key value by given number

decr mykey 5

delete

Deletes an existing key

delete mykey

flush_all

Invalidate specific items immediately

flush_all

Invalidate all items in n seconds

flush_all 900

stats

Prints general statistics

stats

Prints memory statistics

stats slabs

Prints memory statistics

stats malloc

Print higher level allocation statistics

stats items

stats detail

stats sizes

Resets statistics

stats reset

version

Prints server version.

version

verbosity

Increases log level

verbosity

quit

Terminate telnet session

quit

查看 Statistics

通过下面命令查看 statistics 信息:

stats

你会获得一个服务状态的详细列表信息,具体情况如下:

参数

描述

pid

7862

memcache服务器进程ID

uptime

12617972

服务器已运行秒数

time

1320756409

服务器当前Unix时间戳

version

1.4.5

memcache版本

pointer_size

64

指针大小

rusage_user

1.731736

进程累计用户时间

rusage_system

251.421778

进程累计系统时间

curr_connections

41

当前连接数量

total_connections

848

Memcached运行以来连接总数

connection_structures

46

Memcached分配的连接结构数量

cmd_get

164377

get命令请求次数

cmd_set

58617

set命令请求次数

cmd_flush

0

flush命令请求次数

get_hits

105598

get命令命中次数

get_misses

58779

get命令未命中次数

delete_misses

0

delete命令未命中次数

delete_hits

0

delete命令命中次数

incr_misses

0

incr命令未命中次数

incr_hits

0

incr命令命中次数

decr_misses

0

decr命令未命中次数

decr_hits

0

decr命令命中次数

cas_misses

0

cas命令未命中次数

cas_hits

0

cas命令命中次数

cas_badval

0

使用擦拭次数

auth_cmds

0

认证命令处理的次数

auth_errors

0

认证失败数目

bytes_read

262113283

读取总字节数

bytes_written

460023263

发送总字节数

limit_maxbytes

536870912

分配的内存总大小(字节)

accepting_conns

1

服务器是否达到过最大连接(0/1)

listen_disabled_num

0

失效的监听数

threads

4

当前线程数

conn_yields

0

连接操作主动放弃数目

bytes

1941693

当前存储占用的字节数

curr_items

476

当前存储的数据总数

total_items

58617

启动以来存储的数据总数

evictions

0

LRU释放的对象数目

reclaimed

48830

已过期的数据条目来存储新数据的数目

如果你不确定你是否有足够的内存,你可以通过查看“evictions”的值来确定Memcache实例的内存使用情况,如果还有足够的内存,那么“evictions”的值应该为0或者不在增长。

查看 Memory Statistics

你可以通过下面命令查看当前 memory statistics :

stats slabs

Example:

STAT 1:chunk_size 80

STAT 1:chunks_per_page 13107

STAT 1:total_pages 1

STAT 1:total_chunks 13107

STAT 1:used_chunks 13106

STAT 1:free_chunks 1

STAT 1:free_chunks_end 12886

STAT 2:chunk_size 100

STAT 2:chunks_per_page 10485

STAT 2:total_pages 1

STAT 2:total_chunks 10485

STAT 2:used_chunks 10484

STAT 2:free_chunks 1

STAT 2:free_chunks_end 10477

[...]

STAT active_slabs 3

STAT total_malloced 3145436

END

查看各个Slab中Item的数目和年龄(最后一次访问距现在的秒数)

stats items

结果:

stats items

STAT items:1:number 220

STAT items:1:age 83095

STAT items:2:number 7

STAT items:2:age 1405

[...]

END

清空统计数据

stats resets

显示内存分配数据

stats malloc

设置或显示详细操作记录

stats detail [on|off|dump]

清空所有键值

flush_all

退出

quit

最大有效期为 30 天

不要设置过期时间超过30天,如果超过30天,Memcache会把它当做一个 Unix timestamp。

设置最大有效期(2592000ms)例子:

set my_key 0 2592000 1

1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值