php7出了!性能提升一倍!
不过兼容性好像还不太好,我在php7下安装memcached扩展遇到了问题,记录一下。
centos下安装php7见 http://my.oschina.net/u/150705/blog/473836 与安装5.6基本类似。
一. 首先使用yum安装memcache:
yum search memcached
yum -y install memcached
安装成功之后输入
memcached -h
可以查看memcached的命令参数,之后可以通过如下的命令来启动memcached,此时各参数为默认值:
service memcached start
默认参数值可以通过下面语句查看:
vi /etc/sysconfig/memcached
内容一般如下:
PORT="11211" #memcached的端口号
USER="memcached" #以memcached用户运行
MAXCONN="1024" #最大连接数
CACHESIZE="64" #设置缓存内存为64M
OPTIONS=""
二. 直接使用pecl安装php的memcached扩展出现问题,故只能使用手动安装
三. 手动安装php的memcached扩展(感谢评论里两位大大的指点):
memcache安装成功并启动之后,还需要在php之中安装相应的扩展模块,才能在php之中使用memcache:
1. 首先需要安装libmemcached支持:
官网在此,找到最新版的下载链接 https://launchpad.net/libmemcached,使用wget下载tar.gz压缩包,解压缩,进入目录,依次执行(prefix后为安装目录):
./configure --prefix=/usr/local/libmemcached --with-memcached
make
make install
2. 安装memcached
php使用memcache的扩展有两个,一个memcache,一个memcached,前者比较老,推荐使用第二个,我们这里以第二个为例:
在github上找到适用于php7的分支(https://github.com/php-memcached-dev/php-memcached/tree/php7),同样使用wget下载zip压缩包,解压缩,进入目录,依次执行下列命令(其中php-config和libmemcached目录根据具体情况设定,可以使用whereis或者find来查找):
phpize
./configure --enable-memcached --with-php-config=/data/soft/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached
make
make install
3. 修改php.ini文件
(php.ini文件具体位置可以通过phpinfo()函数来查看到),在php.ini文件之中加入下面这句:
extension=memcached.so
4. 检查安装是否成功
重启httpd,然后新建一个php文件,在其中加入phpinfo()函数,通过浏览器打开该php页面,查看是否出现memcached模块,如果出现,证明安装成功!
四、创建php文件并测试:
$mem = new Memcached(); //创建一个memcached对象
$mem->addServer('localhost',11211); //连接memcached
$mem->set("key","test");//设置一个变量到内存中,名称是key 值是test
$get_value = $mem->get('key'); //从内存中取出key的值
if($mem->getResultCode() == Memcached::RES_NOTFOUND) //如果该名称的变量没有设置
{
echo 'not set!';
}
else
{
echo $get_value;
}
来源:oschina
链接:https://my.oschina.net/u/150705/blog/548143