‘cache’ 类别下的博文

张映 发表于 2011-06-22

分类目录: cache, nosql

一,什么是redis

redis是一个key-value存储系统。 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集 合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis 支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改 操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

阅读全文>>

张映 发表于 2010-09-04

分类目录: cache, mysql

对memcache的操作一般都是放程序里面去操作的,新增,更新,删除什么的。如果能利用mysql来对memcache进行操作,那就更好,代码端就会简单一点。但是利用mysql来操作memcache,比较适合实现简单的方式。下面说一下安装的过程和遇到的问题,在看安装过程的之前,我觉得应当先看一下,我安装时候所遇到的问题,这样你可以避免掉,少走一点弯路。

一,安装所要的软件
阅读全文>>

张映 发表于 2010-05-20

分类目录: cache

一,开发阶段为什么要关闭cache呢?

不知道大家有没有遇到过这种情况就是,当你在做一个东西的时候,你改了很多东西,但是页面,还是没有改变,刷新页面,还是老样子。当你清除浏览器缓存就好了。还有就是改来改去,莫名其妙的就好了。

二,出现上面的情况,很让人郁闷,会让人烦的。

影响开发效率的主要原因,是因为你没想起来是由各种缓存造成的。以我为例吧

前天,我发现在http://blog.51yip.com/manual/jquery/index.html左上方的搜索功能不能用了,以前是好的,然后跑去

阅读全文>>

张映 发表于 2010-05-05

分类目录: cache

apc,xcache,eaccelerator都能够缓存opcode的php中间码,从而起到对php加速的作用,以前写过一篇关于eaccelerator的文章,请参考http://blog.51yip.com/php/172.html   apc,xcache,eaccelerator安装方法都一样,不同的是参数设置不一样而已

一,apc安装配置
wget http://pecl.php.net/get/APC-3.1.2.tgz
tar zxvf APC-3.1.2.tgz
cd APC-3.1.2/
/usr/local/php/bin/phpize
./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/php/bin/php-config
make
make install

阅读全文>>

张映 发表于 2010-05-05

分类目录: cache, nosql, php

一,在说出我的困惑时,先罗嗦一下memcache

memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。起初作者编写它可能是为了提高动态网页应用,为了减轻数据库检索的压力,来做的这个缓存系统。它的缓存是一种分布式的,也就是可以允许不同主机上的多个用户同时访问这个缓存系统, 这种方法不仅解决了共享内存只能是单机的弊端,同时也解决了数据库检索的压力,最大的优点是提高了访问获取数据的速度!基于memcache作者对分布式 cache的理解和解决方案。 memcache完全可以用到其他地方 比如分布式数据库, 分布式计算等领域。

二,memcahce的key如何关理,更合适

阅读全文>>

张映 发表于 2010-04-19

分类目录: cache, 服务器相关

一,什么squid

Squid是一个高性能的代理缓存服务器,可以加快内部网浏览Internet的速度,提高客户机的访问命中率。Squid不仅支持HTTP协议,还支持FTP、gopher、SSL和WAIS等协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。

Squid将数据元缓存在内存中,同时也缓存DNS查寻的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP,Squid能够实现重叠的代理阵列,从而最大限度的节约带宽。

Squid能够增强访问控制,提高安全性。可以针对特定的的网站、用户、网络、数据类型实施访问控制等

二,安装squid

阅读全文>>

张映 发表于 2010-04-18

分类目录: cache

一,什么是varnish

Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang 使用3台Varnish代替了原来的12台Squid,性能比以前更好。
Varnish 的作者Poul-Henning Kamp是FreeBSD的内核开发者之一,他认为现在的计算机比起1975年已经复杂许多。在1975年时,储存媒介只有两种:内存与硬盘。但现在计算机系统的内存除了主存外,还包括了CPU内的L1、L2,甚至有L3快取。硬盘上也有自己的快取装置,因此Squid Cache自行处理物件替换的架构不可能得知这些情况而做到最佳化,但操作系统可以得知这些情况,所以这部份的工作应该交给操作系统处理,这就是 Varnish cache设计架构。
Varnish的理念是好的,但是Varnish还没有稳定到可以完全替代Squid的程度,现在就抛弃Squid选择Varnish是不明智的。

阅读全文>>

张映 发表于 2010-02-08

分类目录: cache, php

一,eAccelerator是什么?有什么用?

eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍;

二,eAccelerator安装及配置

具体安装方法,请参考

http://blog.51yip.com/php/177.html

vi /usr/local/php/lib/php.ini

zend_extension="eaccelerator.so"

阅读全文>>

张映 发表于 2010-02-03

分类目录: cache, nosql

一,memcache分布式的解释

memcache分布式,说白一点就是在很多台机子上装memcache,同时使用他们。

二,启动多个memcached进程,可以在一台机子上,可以在多台机子上

/usr/local/bin/memcached -d -m 20 -u zhangy -p 12000 -P ./memcached.pid
/usr/local/bin/memcached -d -m 20 -u zhangy -p 13000 -P ./mem.pid

我在同一台机子上,启动了二个memcached进程

[zhangy@BlackGhost drochilli]$ ps -e |grep memcache
17904 ?        00:00:00 memcached
17906 ?        00:00:00 memcached

表明已经启动了二个进程

阅读全文>>

张映 发表于 2010-02-03

分类目录: cache, nosql

当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服务器上面

阅读全文>>