之乎者也2011

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

memcache 运行情况,内存使用

张映 发表于 2010-02-03

分类目录: cache

当memcached服务器端装好了,相应的调用端也配置好了,但是我们怎么知道memcache使用内存的,以及他是怎么工作的呢?接下来,我把我对memcache的监控的过程根大家分享一下:

1.配置监控文件

cd memcache-2.2.4

[zhangy@BlackGhost memcache-2.2.4]$ ls |grep .php
example.php
memcache.php
run-tests.php

把memcache.php文件,cp到你的web服务器上面

cp memcache.php /home/zhangy/www/test

nano /home/zhangy/www/test/memcache.php 打开修改配置

define('ADMIN_USERNAME','zhangy');     // Admin Username
define('ADMIN_PASSWORD','adsfadf');      // Admin Password

$MEMCACHE_SERVERS[] = '127.0.0.1:12000'; // add more as an array

2.能过url访问memcache.php

上图中的东西,英语好一点的看懂没问题,一般的要去查翻译了。我就说一点,

Hits: 29 (67.4%)          #点击了29

Misses: 14 (32.6%)      #字面意思,丢失了14。我这样说肯定有很多人想,这14是memcache没起作用。

对的,是没有起作用,第一次都不会起作用,如果不明白,去搞清楚,memcache的调用原理。

ServerKeyValueDelete
127.0.0.1:12000 01cc7cb61ddbb6c2b11f25297705166d
flag:1
Size:507.0 Bytes
a:17:{s:7:"AdminId";s:1:"8";s:9:"AdminNa me";s:11:"123@abc.com";s:13:"AdminPasswo rd";s:32:"e10adc3949ba59abbe56e057f20f88 3e";s:8:"TelPhone";s:7:"2316544";s:11:"C ompanyName";s:12:"公司";s:12:"Co ntractName";s:7:"xtakaaa";s:3:"Sex";s:1: "0";s:14:"CompanyAddress";s:8:"adsfadsf" ;s:12:"CompanyPhone";s:6:"326541";s:7:"Z ipCode";s:7:"5546645";s:3:"Fax";s:7:"546 5159";s:5:"Email";N;s:10:"UpdateLine";N; s:8:"DateLine";s:10:"1243420034";s:8:"Is Online";s:1:"0";s:9:"AdminType";s:1:"2"; s:10:"MerchantID";s:1:"0";} Delete

上面的东西是对memcache的key和value的管理。

注意:曾经我被一个同事鄙视了,为什么会鄙视呢?在一起做项目,当时他告诉我,写sql的时,不要用join,left join 等,他的意思是说sql语句只对单表进行操作。对话如果下

我:为什么不能使用join,left join 这些东西?

他:因为用这join,left join会影响速度。

我:有二张表关联,二张表用主键关联,我从一张里面找出我要数据,然后在从另外一张表里面找出我要的数据,然后在用php的循环套循环来,来得到我真正想要的数据,这样做真得比join,left join快吗,如果真的快,拿出测试数据。

他:这个靠经验,并且说memcache只支持单表操作

我:(我心想我做php也快四年了),如果memcache只支持单表操作的话,那不会有这么多人用它。

上面的这个key 01cc7cb61ddbb6c2b11f25297705166d 就是一个联合查寻

针对我刚才所说的,对底是join,left join快,还是用php循环套循环,我会给出测试数据。并且可以让大家亲

自来测试

转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/cache/92.html
posted on 2011-09-03 11:48  之乎者也2011  阅读(329)  评论(0编辑  收藏  举报