linux安装APC缓存的安装
[
2010/09/03 09:23 | by xiaoyuwxz ]
2010/09/03 09:23 | by xiaoyuwxz ]
本内容为原创内容,转载请注明:
本文来自http://blog.gsywx.com
APC的php扩展下载地址:
http://pecl.php.net/package/APC
wget http://pecl.php.net/get/APC-3.1.4.tgz
tar zxvf APC-3.1.4.tgz
cd APC-3.1.4
/web/php/bin/phpize
./configure --enable-apc --enable-apc-mmap --with-php-config=/web/php/bin/php-config
make
make install
返回:
Installing shared extensions: /web/php/lib/php/extensions/no-debug-non-zts-20060613/
vi /etc/php
查找extension_dir,在下面加上:
extension=apc.so
apc.enabled = 1
apc.cache_by_default = on
apc.shm_segments = 1
apc.shm_size = 128
apc.ttl = 7200
apc.user_ttl = 7200
apc.num_files_hint = 2048
apc.write_lock = On
apc.gc_ttl = 3600
apc.ttl= 7200
apc.enable_cli=1
相关参数说明:(完整的参数说明请查看INSTALL文件)
apc.enabled = 1
设置0可以禁用APC。主要当APC被静态编译到PHP时,没有其他的方法来禁用它,编制了zend_extension时可以注释掉。默认值为:1
apc.shm_segments = 1
为编译器缓冲区分配的共享内存块数量(建议值为1)。将其设置为1以外的值并没有影响模式的mmap,因为mmap'ed的SHM段没有大小限制。
如果APC耗尽了共享内存,并且已将apc.shm_size指令设为系统允许的最大值,你可以尝试增大此值。默认值为:1
apc.shm_size = 30
每个共享内存块的大小(以MB为单位,建议值为128~256)。
有些系统(包括大多数BSD)默认的共享内存块大小非常小。默认值为:30
apc.num_files_hint = 1000
Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。默认值为:1000
apc.user_entries_hint =4096
同apc.num_files_hint。只是针对每个用户而言,默认值:4096
apc.ttl = 0
缓存条目在缓冲区中允许逗留的秒数。0 表示永不超时。建议值为7200~36000。设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。默认值为:0
apc.user_ttl = 0
类似于apc.ttl,只是针对每个用户而言,建议值为7200~36000。默认值:0
apc.gc_ttl = 3600
缓存条目在垃圾回收表中能够存在的秒数。此值提供了一个安全措施,即使一个服务器进程在执行缓存的源文件时崩溃,而且该源文件已经被修改,为旧版本分配的内存也不会被回收,直到达到此TTL值为止。设为零将禁用。默认值3600
apc.cache_by_default = On
是否默认对所有文件启用缓冲。 若设为Off并与以加号开头的apc.filters指令一起用,则文件仅在匹配过滤器时才被缓存。默认值:On
apc.filters =
一个以逗号分隔的POSIX扩展正则表达式列表。如果源文件名与任意一个模式匹配,则该文件不被缓存。
注意,用来匹配的文件名是传递给include/require的文件名,而不是绝对路径。
如果正则表达式的第一个字符是"+"则意味着任何匹配表达式的文件会被缓存,如果第一个字符是"-"则任何匹配项都不会被缓存。"-"是默认值,可以省略掉。默认值:""
apc.max_file_size = 1M
禁止大于此尺寸的文件被缓存。默认值:1M
apc.num_files_hint = 1000
Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。
apc.write_lock = 1
是否启用写入锁。
apc.enable_cli = 1
主要用于测试和调试。这使APC的设置应用于PHP的CLI版本。
如果要看apc的使用情况可以把源码包下的apa.php拷贝到网站目录内在IE中打开,就可以看到apc状态的图表了。

本文来自http://blog.gsywx.com
APC的php扩展下载地址:
http://pecl.php.net/package/APC
wget http://pecl.php.net/get/APC-3.1.4.tgz
tar zxvf APC-3.1.4.tgz
cd APC-3.1.4
/web/php/bin/phpize
./configure --enable-apc --enable-apc-mmap --with-php-config=/web/php/bin/php-config
make
make install
返回:
Installing shared extensions: /web/php/lib/php/extensions/no-debug-non-zts-20060613/
vi /etc/php
查找extension_dir,在下面加上:
extension=apc.so
apc.enabled = 1
apc.cache_by_default = on
apc.shm_segments = 1
apc.shm_size = 128
apc.ttl = 7200
apc.user_ttl = 7200
apc.num_files_hint = 2048
apc.write_lock = On
apc.gc_ttl = 3600
apc.ttl= 7200
apc.enable_cli=1
相关参数说明:(完整的参数说明请查看INSTALL文件)
apc.enabled = 1
设置0可以禁用APC。主要当APC被静态编译到PHP时,没有其他的方法来禁用它,编制了zend_extension时可以注释掉。默认值为:1
apc.shm_segments = 1
为编译器缓冲区分配的共享内存块数量(建议值为1)。将其设置为1以外的值并没有影响模式的mmap,因为mmap'ed的SHM段没有大小限制。
如果APC耗尽了共享内存,并且已将apc.shm_size指令设为系统允许的最大值,你可以尝试增大此值。默认值为:1
apc.shm_size = 30
每个共享内存块的大小(以MB为单位,建议值为128~256)。
有些系统(包括大多数BSD)默认的共享内存块大小非常小。默认值为:30
apc.num_files_hint = 1000
Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。默认值为:1000
apc.user_entries_hint =4096
同apc.num_files_hint。只是针对每个用户而言,默认值:4096
apc.ttl = 0
缓存条目在缓冲区中允许逗留的秒数。0 表示永不超时。建议值为7200~36000。设为 0 意味着缓冲区有可能被旧的缓存条目填满,从而导致无法缓存新条目。默认值为:0
apc.user_ttl = 0
类似于apc.ttl,只是针对每个用户而言,建议值为7200~36000。默认值:0
apc.gc_ttl = 3600
缓存条目在垃圾回收表中能够存在的秒数。此值提供了一个安全措施,即使一个服务器进程在执行缓存的源文件时崩溃,而且该源文件已经被修改,为旧版本分配的内存也不会被回收,直到达到此TTL值为止。设为零将禁用。默认值3600
apc.cache_by_default = On
是否默认对所有文件启用缓冲。 若设为Off并与以加号开头的apc.filters指令一起用,则文件仅在匹配过滤器时才被缓存。默认值:On
apc.filters =
一个以逗号分隔的POSIX扩展正则表达式列表。如果源文件名与任意一个模式匹配,则该文件不被缓存。
注意,用来匹配的文件名是传递给include/require的文件名,而不是绝对路径。
如果正则表达式的第一个字符是"+"则意味着任何匹配表达式的文件会被缓存,如果第一个字符是"-"则任何匹配项都不会被缓存。"-"是默认值,可以省略掉。默认值:""
apc.max_file_size = 1M
禁止大于此尺寸的文件被缓存。默认值:1M
apc.num_files_hint = 1000
Web服务器上可能被包含或被请求的不同源文件的大致数量(建议值为1024~4096)。
如果你不能确定,则设为 0 ;此设定主要用于拥有数千个源文件的站点。
apc.write_lock = 1
是否启用写入锁。
apc.enable_cli = 1
主要用于测试和调试。这使APC的设置应用于PHP的CLI版本。
如果要看apc的使用情况可以把源码包下的apa.php拷贝到网站目录内在IE中打开,就可以看到apc状态的图表了。
在windows下使用memcached教程
[
2010/08/12 10:45 | by xiaoyuwxz ]
2010/08/12 10:45 | by xiaoyuwxz ]
在windows下使用memcached教程
一、php扩展的安装
下载地址:http://downloads.php.net/pierre/
下载合适所用php版本,解压出php_memcache.dll,并拷入php\ext目录。
修改php.ini
加入extension=php_memcache.dll
重启iis
二、memcached服务端的安装
下载地址:http://jehiah.cz/projects/memcached-win32/
如:memcached-1.2.1-win32.zip,并解压
把memcached.exe拷入指定位置,如d:\memcached
打开cmd,进入d:\memcached
memcached.exe -d install
memcached.exe -d start
这时候memcached就可以正常使用了。
默认启动为使用内存: 64M
如需自行加大内存需自行运行memcached
停掉安装的服务或卸载安装的服务,进入d:\memcached
memcached.exe -m 128
这样,memcached就可以使用128M内存了。这时候你会发现这个CMD窗口一直开着,并不能关闭,关闭窗口memcached程序也会退出。
解决方法:
下载RunHiddenConsole.exe,并拷入d:\memcached
RunHiddenConsole.exe memcached.exe -m 128
附:memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
附:php扩展中的配置信息
[Memcache]
; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,
; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。
; 是否在遇到错误时透明地向其他服务器进行故障转移。
memcache.allow_failover = On
; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。
memcache.max_failover_attempts = 20
; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。
; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。
memcache.chunk_size = 8192
; 连接到memcached服务器时使用的默认TCP端口。
memcache.default_port = 11211
; 控制将key映射到server的策略。默认值"standard"表示使用先前版本的老hash策略。
; 设为"consistent"可以允许在连接池中添加/删除服务器时不必重新计算key与server之间的映射关系。
;memcache.hash_strategy = "standard"; 控制将key映射到server的散列函数。默认值"crc32"使用CRC32算法,而"fnv"则表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = "crc32"
;memcache也可以作为session的存储模块,具体参看:memcache PHP 的 session.save_handler.
本内容为原创内容,转载请注明:
本文来自http://blog.gsywx.com
一、php扩展的安装
下载地址:http://downloads.php.net/pierre/
下载合适所用php版本,解压出php_memcache.dll,并拷入php\ext目录。
修改php.ini
加入extension=php_memcache.dll
重启iis
二、memcached服务端的安装
下载地址:http://jehiah.cz/projects/memcached-win32/
如:memcached-1.2.1-win32.zip,并解压
把memcached.exe拷入指定位置,如d:\memcached
打开cmd,进入d:\memcached
memcached.exe -d install
memcached.exe -d start
这时候memcached就可以正常使用了。
默认启动为使用内存: 64M
如需自行加大内存需自行运行memcached
停掉安装的服务或卸载安装的服务,进入d:\memcached
memcached.exe -m 128
这样,memcached就可以使用128M内存了。这时候你会发现这个CMD窗口一直开着,并不能关闭,关闭窗口memcached程序也会退出。
解决方法:
下载RunHiddenConsole.exe,并拷入d:\memcached
RunHiddenConsole.exe memcached.exe -m 128
附:memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
附:php扩展中的配置信息
[Memcache]
; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,
; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。
; 是否在遇到错误时透明地向其他服务器进行故障转移。
memcache.allow_failover = On
; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。
memcache.max_failover_attempts = 20
; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。
; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。
memcache.chunk_size = 8192
; 连接到memcached服务器时使用的默认TCP端口。
memcache.default_port = 11211
; 控制将key映射到server的策略。默认值"standard"表示使用先前版本的老hash策略。
; 设为"consistent"可以允许在连接池中添加/删除服务器时不必重新计算key与server之间的映射关系。
;memcache.hash_strategy = "standard"; 控制将key映射到server的散列函数。默认值"crc32"使用CRC32算法,而"fnv"则表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = "crc32"
;memcache也可以作为session的存储模块,具体参看:memcache PHP 的 session.save_handler.
本内容为原创内容,转载请注明:
本文来自http://blog.gsywx.com
linux下php扩展cURL的详细安装教程(适合新手)
[
2010/07/01 14:48 | by xiaoyuwxz ]
2010/07/01 14:48 | by xiaoyuwxz ]
方法一:还未安装php程序时
进入官方下载:http://curl.haxx.se/download.html
wget http://curl.haxx.se/download/curl-7.21.0.tar.gz
tar zxvf curl-7.21.0.tar.gz
cd curl-7.21.0
./configure
make
make install
安装php时,只要打开./configure --with-curl
就可以了。
方法二:已安装好php程序,想要添加php的curl扩展
先在线安装
yum install curl curl-devel
进入php的源码目录,如我用的是php-5.2.13.tar.gz
而我装好的php程序在/web/php目录,操作如下:
tar zxvf php-5.2.13.tar.gz
cd php-5.2.13
cd ext/curl
/web/php/bin/phpize
./configure --with-curl=DIR --with-php-config=/web/php/bin/php-config
make
编译结束会有这样一句:
Libraries have been installed in:
/soft/php-5.2.13/ext/curl/modules
而正常在装过其他php扩展后会有这样的目录
/web/php/lib/php/extensions/no-de-zts-20060613
如没有/web/php/lib/php/extensions/目录可以自己创建
mkdir -p /web/php/lib/php/extensions/no-de-zts-20060613
cp modules/curl.so /web/php/lib/php/extensions/no-de-zts-20060613
vi /etc/php.ini
找到
extension_dir =
确保它为
extension_dir = "/web/php/lib/php/extensions/no-debug-non-zts-20060613/"
然后在下面一行添加:
extension = "curl.so"
重启下httpd或nginx即可
Linux下PHP 5.2.x Oracle客户端扩展OCI8安装
[
2010/06/09 03:46 | by xiaoyuwxz ]
2010/06/09 03:46 | by xiaoyuwxz ]
一、安装Oracle即时客户端程序
打开oracle官方下载页面
http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/htdocs/linuxsoft.html
下载Oracle即时客户端程序,下载以下4个包(需注册才可以下载)
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-jdbc-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-devel-11.2.0.1.0-1.i386.rpm
上传至服务器进行安装。
rpm -ivh *.rpm
二、安装打开php扩展包
打开php官方网页
http://pecl.php.net/package/oci8,比如下载oci8-1.4.1.tgz
wget http://pecl.php.net/get/oci8-1.4.1.tgz
tar zxvf oci8-1.4.1.tgz
cd oci8-1.4.1
比如我的php安装在/web/php
/web/php/bin/phpize
./configure --with-php-config=/web/php/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client/lib
make && make install
修改php.ini
加上: extension = "oci8.so"
重启程序.
查看phpinfo.php.
参考:
http://cn.php.net/manual/en/oci8.installation.php
参考:
http://blog.s135.com/post/411/
打开oracle官方下载页面
http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/htdocs/linuxsoft.html
下载Oracle即时客户端程序,下载以下4个包(需注册才可以下载)
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-jdbc-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.i386.rpm
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-devel-11.2.0.1.0-1.i386.rpm
上传至服务器进行安装。
rpm -ivh *.rpm
二、安装打开php扩展包
打开php官方网页
http://pecl.php.net/package/oci8,比如下载oci8-1.4.1.tgz
wget http://pecl.php.net/get/oci8-1.4.1.tgz
tar zxvf oci8-1.4.1.tgz
cd oci8-1.4.1
比如我的php安装在/web/php
/web/php/bin/phpize
./configure --with-php-config=/web/php/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/11.2/client/lib
make && make install
修改php.ini
加上: extension = "oci8.so"
重启程序.
查看phpinfo.php.
参考:
http://cn.php.net/manual/en/oci8.installation.php
参考:
http://blog.s135.com/post/411/



