阅读:2572回复:0
PHP四大加速器op,apc,xcache,eA与缓存服务Redis,memcache基础知识PHP四大脚本加速器opcache,apc,xcache,eAccelerator 以及 缓存服务Redis,memcache基础知识 【区别】 四大加速器opcache,apc,xcache,eAccelerator是对PHP代码编译加速。 缓存服务Redis,memcache是对网站数据进行缓存,提高数据查询速度。 【脚本加速】 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是省去了每次加载和解析PHP脚本的开销。理想状态下可以数倍提示PHP速度。 opcache:PHP官方出品,效果最好,推荐。apc:APC全称是Alternative PHP Cache,是PHP PECL的一个扩展。 xcache:国人研发的一款脚本加速器。 eAccelerator:前身是truck-mmcache,开发者被Zend给招安。 【数据缓存】 通过将第一次查询的数据缓存起来,遇到下次查询的时候,直接调用之前存储的结果,加快网站相应速度。 Redis:Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。 memcache:memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 。 memcache比redis早了10年,有广泛的群众基础。 但是redis基本上是memcache的下一代产品,新项目技术选型,都是redis了。数据类型 redis数据类型丰富,支持set liset等类型 memcache支持简单数据类型,需要客户端自己处理复杂对象 持久性 redis支持数据落地持久化存储 memcache不支持数据持久存储 分布式存储 redis支持master-slave复制模式 memcache可以使用一致性hash做分布式 value大小不同 memcache是一个内存缓存,key的长度小于250字符,单个item存储要小于1M,不适合虚拟机使用 数据一致性不同 redis使用的是单线程模型,保证了数据按顺序提交。 memcache需要使用cas保证数据一致性。CAS(Check and Set)是一个确保并发一致性的机制,属于“乐观锁”范畴;原理很简单:拿版本号,操作,对比版本号,如果一致就操作,不一致就放弃任何操作 cpu利用 redis单线程模型只能使用一个cpu,可以开启多个redis进程 |
|
最新喜欢:ruoli |