memcached是什么? memcached 是高效、快速的分布式内存对象缓存系统,主要用于加速 WEB 动态应用程序,主要使用在Liunx系统中,但也可在Windows系统使用。这里我就说的是Windows中的。
Memcached 本身的启动过程,在 memcached.c 的 main 函数中顺序如下:
1 、调用 settings_init() 设定初始化参数
2 、从启动命令中读取参数来设置 setting 值
3 、设定 LIMIT 参数
4 、开始网络 socket 监听(如果非 socketpath 存在)( 1.2 之后支持 UDP 方式)
5 、检查用户身份( Memcached 不允许 root 身份启动)
6 、如果有 socketpath 存在,开启 UNIX 本地连接(Sock 管道)
7 、如果以 -d 方式启动,创建守护进程(如上调用 daemon 函数)
8 、初始化 item 、 event 、状态信息、 hash 、连接、 slab
9 、如设置中 managed 生效,创建 bucket 数组
10 、检查是否需要锁定内存页
11 、初始化信号、连接、删除队列
12 、如果 daemon 方式,处理进程 ID
13 、event 开始,启动过程结束, main 函数进入循环。
安装: 下载Memcached,然后进入同目录的Doc:
安装:
memcached.exe -d install
启动:
memcached.exe -d start
以后每次开机启动,需要删除的话就在系统服务里面停止了即可.
如果使用PHP的扩展,去http://pecl4win.php.net/ext.php/php_memcache.dll选择合适的PHP版本下载php_memcache.dll文件放到Etc下面,在PHP.INI修改:
extension=php_memcache.dll
PECL memcache是PECL发布的扩展,目前最新版本是2.1.0,可以在pecl网站得到。memcache扩展的使用方法可以在新一些的PHP手册中找到,它和mcache很像,真的很像:
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");
$version = $memcache->getVersion();
echo "Server's version: ".$version."\n";
$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;
$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)\n";
$get_result = $memcache->get('key');
echo "Data from the cache:\n";
var_dump($get_result);
天气:大雨,ccdot发表于2007-10-30 10:41:32,阅读了436次,共有个0回复.