热门排行
简介
WinCache是微软推出的FastCGI模式中使用的WinCache扩展,WinCache可以帮助在Windows IIS环境下以FastCGI模式运行的PHP加速,并且不用修改任何源代码,只需将WinCache启用即可。
WinCache操作码缓存:PHP脚本每一次运行都会编译,WinCache将编译后的PHP脚本保存在内存中,之后执行相同脚本直接调用操作码缓存,而不用再一次编译。
WinCache文件缓存:硬盘读写速度远远不如内存的速度,WinCache会将读取的文件保存在内存中,之后读取会从缓存中读取,减少硬盘读写次数,不但可以延长硬盘寿命还可以加快速度。
WinCache路径缓存:PHP中相对路径会转换为绝对路径进行文件操作,WinCache会将相对路径缓存为绝对路径,减少转换次数,提升效率。
WinCache提供API:WinCache还提供了一系列PHP函数供PHP开发者调用,我们可以使用这些函数将PHP对象和变量存储在共享内存中,而不必每一次都定义,提高代码执行速度。
【PHP加速器WinCache开启方法及注意事项】
首先确定你是用IIS以FastCGI方式运行PHP,然后下载你使用的PHP版本所对应的WinCache,然后将所有文件解压到PHP的ext目录中。使用PHP Manager启用php_wincache.dll,或者在php.ini结尾另起一行,加入extension=php_wincache.dll然后重启IIS即可。在phpinfo中看到有wincache就算开启成功了
wincache安装方法:
打开下载来的文件,然后它提示解压目录,我们就选桌面,然后进入解压文件目录把wincache.dll这个文件复制到D:\php5\ext下边,另外目录里的wincache.php是监控wincache工作状态的,一般不需要它,暂且不管。
然后在php.ini加入 extension = php_wincache.dll 即可.
WinCache扩展包括了三种不同种类的缓存使用,下面将要分别介绍这三种缓存和他们所能提供的便利。
PHP操作码缓存
PHP是一个脚本运行引擎,他读入包含文字和PHP指令的输入数据流,再输出另一个通常是HTML格式的数据流。这就是说在一个服务器上,每当网络用户需要,PHP引擎就会读入、解析、编码和执行某个脚本。而这种读入、解析和编码会给服务器的CPU和文件系统增加额外的负担,因此会影响到PHP脚本的整体运行。PHP操作码缓存就是用来把编码后的脚本字节码储存在内存中从而能让PHP引擎在后来对同一脚本的操作中重复使用。
文件缓存
除了使用操作码缓存,PHP引擎还需要从文件系统里读取脚本文件。当PHP脚本储存在一个远程的UNC(统一命名约定)文件共享中,文件操作会出现一个显著的动作。Windows缓存扩展包括了一个文件缓存来在内存中储存PHP脚本文件的内容,这样就减少了PHP引擎的文件操作数量。
相对路径缓存
PHP脚本经常会引用或使用通过相对路径访问的文件。而每一个相对路径都必须被PHP引擎转化成绝对路径才能够使用。当一个PHP应用通过相对路径访问很多的PHP文件,将相对路径转化成绝对路径的工作就会对应用的运行产生消极影响。Windows缓存扩展提供了专门针对相对路径的缓存,可以将相对路径到绝对路径的转换地图储存起来,从而减少了相对路径的总转化量。