08 2012 档案

摘要:Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机 制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。Memcache官方网 站:http://www.danga.com/memcached,更多详细的信息可以来这里了解。为什么会有Memcache和memcached两种名称?其实Memcache是这个项目的名称,而memcached是它服务器端的主程序文件名,知道 阅读全文
posted @ 2012-08-23 11:59 coolid 阅读(165) 评论(0) 推荐(0)
摘要:Slab Allocation机制:整理内存以便重复使用最近的memcached默认情况下采用了名为Slab Allocator的机制分配、管理内存。在该机制出现以前,内存的分配是通过对所有记录简单地进行malloc和free来进行的。但是,这种方式会导 致内存碎片,加重操作系统内存管理器的负担,最坏的情况下,会导致操作系统比memcached进程本身还慢。Slab Allocator就是为解决该问题而诞生的。下面来看看Slab Allocator的原理。下面是memcached文档中的slab allocator的目标:the primary goal of the slabs subsys 阅读全文
posted @ 2012-08-23 11:48 coolid 阅读(155) 评论(0) 推荐(0)
摘要:1、下载memcache,地址wget http://memcached.googlecode.com/files/memcached-1.4.14.tar.gz2、解压tar zxf memcached-1.4.14.tar.gz3、cd memcached-1.4.144、./configure --prefix=/opt/memcached-1.4.145、make6、make install7、下载php扩展包,之前下载的是最新的3.0.6,总是提示失败,最后下载了wget http://pecl.php.net/get/memcache-2.2.6.tgz8、解压 tar zxf m 阅读全文
posted @ 2012-08-21 11:48 coolid 阅读(264) 评论(0) 推荐(0)
摘要:一直对memcache和memcached的区别不理解。今天google了很多资料终于弄清楚了他们的不同。Memcache,作为PHP的原生版本,是完全在PHP框架内开发的,支持OO和非OO两套接口。Memcached,是建立在libmemcached的基础上开发的,只支持OO特性,和memcache的使用相同,但是拥有比memcache更多的方法和特性。两者的守护进程都是memcached,这一点容易让人混淆。memcached支持Binary Protocol,而memcache不支持。因此意味着memcached会有更高的性能,不过memcached目前还不支持长连接。Memcached 阅读全文
posted @ 2012-08-20 15:52 coolid 阅读(262) 评论(0) 推荐(0)
摘要:小更改,大效率.对于数组:$arr = array('a', 'b', 'c', 'd');使用for循环将所有的元素遍历出来,通常我们会这么写:for($i = 0; $i < count($arr); $i++){ echo $arr[$i].'<br />';}但是这样写会出现执行效率上的问题,在每次执行括号里面的内容时,都会使用count()函数读取数组的数量,造成不必要的重复.改进后的代码:for($i = 0, $j = count($arr); $i < $j; $i++){ 阅读全文
posted @ 2012-08-20 15:22 coolid 阅读(370) 评论(0) 推荐(0)