python html5 bootstrap 视频教程

德云社区

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

数字 IDE 网页 ── \"所见即所得\" 编写 HTML4、HTML5 静态 \"网站站群\" 动态网站,生成 Robots、站点地图,死链检测,强大文本编辑器功能。。。集成中英自动 TTS 文本诵读功能。。。
数字 IDE Python ── 支持 \"极速编写-重构\" Python、Django、HTML5、XML、C/C++、Java、Perl、PHP、Ruby、C#、VB .Net 等程序源代码。。。集成了很多常用编程智能辅助工具。。。
业务范围:
01、企业 \"内部 | 外部\" 数据管理、分析、挖据
02、企业效率优化专用 APP 程序定制、IT 外包
03、智能数字化系统平台架设、开发、部署、维护
04、高仿真、低成本,可动画-可 VR 数字样机建模、开发、规划
05、企业 Linux 云计算 \"IaaS | SaaS\" 服务器架设、开发、部署、维护
06、\"标准 | 非标\" 设备全流程研发,PLC、单片机、工控系统开发、集成
07、企业 Linux / Windows 平台 PLM、ERP 系统架设、开发、部署、维护
08、企业 Linux / Windows 平台 \"内网 | 外网\" 服务器架设、开发、部署、维护
09、企业微信公众号智能互动营销、策划,Web 网站代码、SEO 排名优化,大数据网络推广
10、企业跨平台、跨硬件、跨浏览器 HTML5 Web 电子商务平台、\"静态 | 动态\" 网站开发、部署、维护
11、企业文档、资料、公司网页多语种翻译,数据资料标准化、版本化、数字化管理的规划、研发、实施
数字翻译 ── 能 \"批量翻译\" 文档 GUI 用户界面。。。网页浏览 批处理 全文搜索 全文替换 全文删除 全文插入 数据比较 。。。集成中英自动 TTS 文本诵读功能。。。
查看: 1129|回复: 0

APC、memcached、xcache、eAccelerator 四加速扩展的主要区别

[复制链接]

20

主题

46

帖子

161

积分

版主

Rank: 7Rank: 7Rank: 7

金钱
95
金币
2
威望
0
贡献
0
发表于 2014-12-31 10:41:24 | 显示全部楼层 |阅读模式
|          
APC、memcached、xcache、eAccelerator 四加速扩展的主要区别

在安装 LNMP 或 LAMP 架构 Web 服务器环境时,会选择安装一些缓存扩展以提高 PHP 运行效率。常用缓存扩展,包括:Alternative PHP Cache (简称 APC)、memcached、xcache、eAccelerator。它们之间有什么区别、又分别起什么作用呢?我们该如何选择?本文将给出答案。


1、 Alternative PHP Cache (简称 APC)

Alternative PHP Cache (简称 APC) 是一个开放自由的 PHP opcode 缓存工具。它旨在提供一个自由、 开放、 健全的框架,以缓存和优化 PHP 中间代码。


Alternative PHP Cache 是一种对 PHP 有效的开放源高速缓冲储存器工具,它能缓存 Opcode (目标文件) 的 PHP 中间码。APC 缓存分 2 部分:系统缓存和用户数据缓存。APC 会自动调用系统缓存,就是把 PHP 文件源码编译结果缓存起来,在下一次调用时先对比时间标记。如果未过期,则使用缓存代码运行。默认缓存 3600s ( 1 小时)。但是这样仍会浪费大量 CPU 时间。因此,可在 php.ini 中设置 system 缓存为永不过期 ( apc.ttl=0 )。不过,如果这样设置的话,改变 php.ini 代码后需重启 Web 服务器 (譬如:Apache 或 Nginx )。目前对 APC 的性能测试一般指的就是这一 cache;从文字上讲:Alternative PHP Cache 是一种内存缓存扩展,也是数据库缓存扩展。


2、 memcached

memcached 是一个高性能的分布式内存对象缓存系统。通常被用于降低数据库加载压力,以提高动态 Web 应用的响应速度。


它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态 Web、数据库驱动网站的速度。从文字上可这样理解:内存缓存扩展,且针对集群服务器使用较多,主要用于分布式缓存,算是数据库缓存。


3、 xcache

xcache 是一个开源的 opcode 缓存器/优化器,它能提高服务器的 PHP 性能。它把编译后的 PHP 数据缓冲到共享内存,从而避免重复的编译过程。可直接使用缓冲区已编译代码,从而提高 PHP 效率。通常能提高页面生成速率 2 到 5 倍, 降低服务器负载。其实它与 eAccelerator 一样,都是 PHP 加速器扩展。


4、eAccelerator

eAccelerator 是一个自由开放源码的 PHP 加速器,可优化和缓存动态内容,提高 PHP 脚本缓存性能。使 PHP 脚本在编译状态下,对服务器的开销几乎可完全消除。它还可对脚本起优化作用,以加快其执行效率。可提高 PHP 程序代码执行效率 1-10 倍。从文字上可这样理解:eAccelerator 是 PHP 的加速器扩展。


以上是 4 加速扩展的作用与区别,简单点说:memcached、APC 是数据库缓存扩展,eAccelerator、xcache 是 PHP 的缓存扩展。一般两者只要安装其中之一即可,不要贪多。此外,实际测试中发现当 Cache 数量超过一定阀值时,APC 的性能还不如 Memcached。所以在扩展的选择上,本人一般会选择 xcache + memcached 这个组合。


若已安装 APC 却又想再安装 xcache 时,在 Ubuntu Server 14.04 下会提示冲突。


总结:

1、程序环境非必要 Zend Optimizer 的情况下,首选 APC (它和 Zend Optimizer 是不兼容的);且 APC 的兼容性及性能,表现都非常优秀。


2、若 PHP 环境需要 Zend Optimizer,就安装 eAccelerator,并把 Zend Optimizer 的压缩级别调到 0。


zend optimizer 是一个代码优化模块,可调优 PHP 代码,实现原理:对那些在被最终执行之前,由运行时编译器 (Run-Time Compiler) 产生的代码进行优化。代码性能可提高 40% 到 100%,从这一点严格说,不具备强大的缓存能力。


eAccelerator 是一个将编译后的 PHP 代码缓存在 share memory 中的模块。通过访问共享内存可得到编译后的代码并直接执行,以提高效率。它对 PHP 的执行效率的提高还是很大的。同时,eAccelerator 也可缓存数据至文件中。这部分由于是对文件的操作,对大多数的文件 cache 来说,原理相似,性能相近。


版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载;否则,将追究其法律责任。

AI人工智能 语音助理 人工翻译 教程
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|Sitemap|手机版|小黑屋| |网站地图  

GMT+8, 2018-10-17 16:44 , Processed in 0.050060 second(s), 31 queries .

技术支持 乐数软件  版权所有 © 2014-2019 德云社区

工业和信息化部:粤ICP备14079481号-2

快速回复 返回顶部 返回列表