当前位置:首页 » 编程软件 » memcached编译

memcached编译

发布时间: 2023-01-24 20:37:08

Ⅰ Xcache和memcache选哪个好

memcache和 Xcache 是php的2个缓存工具。PHP5.5以来,自带有 Zend Opcache ,不过默认没启用。
这些缓存器的原理:

引用
把PHP执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,它们的效率是显而易见的,像drupal这种庞大的CMS,每次打开一个页面要调用数十个PHP文件,执行数万行代码,效率可想而知

然而Opcache 只自动缓存代码,它没有开放一个自定义缓存的API,要用到用户缓存的话还得用上Xcache或者memcache。
Xcache是中国人所做,看起来很牛叉,但是在实际应用中发现这个东西太不稳定了,光用它作代码缓存(后台自动缓存PHP代码),竟然有时候会使得整个PHP进程都当掉。然后也试了Xcache的用户缓存,API文档写得真够残的,好在还能用,但万没有想到,在fastcgi模式下,缓存命中率低得可怜,用和没用基本上差不多,明明缓存了,后一个请求过来一查却说没缓存,可能延时个几秒后才得知这个已经缓存了,才能取出缓存内容。这玩意到底仔细测试没有?我用的是3.1.0官方正式版Xcache在PHP 5.5 里作的测试,简直就是个废物!还记得以前在PHP5.2里面也用它过,莫名其妙的请求失败也时有出现。现在直接不敢再用……

相比这个XCache,memcache稳定得多。题外话:memcached和memcache又有点不同,memcached是memcache的守护进程,但是PHP中也有memcached的扩展。这两个说实话是让人头晕不知道是什么区别,其实我看来就是调用memcache的封装模式不太一样而已。具体哪些调用上的不同,参考 http://pecl.php.net/package/memcache 和http://pecl.php.net/package/memcached 。一看就知道memcached要多一些API函数调用,功能也更强大一些。而实际上基础应用的话memcache已经足够。

memcache的使用首先要有它的服务(也就是memcached进程)在跑,这个是一个小小的软件,一般是用C++编译,可以部署在与PHP同一台也可以不同,甚至可以分布式部署几个memcached服务在不同的服务器上。而PHP的memcached只是它的客户端而已。memcached本身没有PHP代码缓存功能,现升到PHP5.5后直接交给自带Opcache 了。一般用它作用户缓存。经过实际开发,memcached稳定性是非常高的,只要有缓存,命中率几乎在99%以上。PHP官方下提供了它的扩展可直接使用:http://pecl.php.net/package/memcache 连Windows版的DLL也直接在那里了,不用自己再编译。Windows下编译这些东西真是麻烦得很啦~

综上memcache更加稳定,推荐使用。Xcache真要用的话,还是老实在本地先测试一下再说。
此外,微软Windows下PHP可以使用Wincache,这个的稳定性没得说的,而且也不用守护进程。但是微软没能编译适用于PHP 64位的DLL。要想通用和跨平台,memcache是首选!!

Ⅱ 如何在Ubuntu 12.04上安装和使用Memcache

这个是centos的详细安装步骤,ubuntu也差不多。一下参考:PHP程序员,雷雪松的个人博客。
memcached需要libevent支持,所以首先安装libevent。
解决安装memcache出现configure: error: libevent is required. If it’s already installed, specify its path using –with-libevent=/dir/
这里要安装memcached.但在编译的时候提示需要指定libevent库,解决办法如下:
查看系统是否已经安装libevent
# rpm -qa|grep libevent
如果有,不要高兴,先升级
#yum -y install libevent
测试libevent是不是已经安装成功
#ls -al /usr/lib | grep libevent

可以看到多个已经安装的类包安装memcached(http://memcached.org/)
可以先查看编译参数
# wget http://memcached.googlecode.com/files/memcached-1.4.8.tar.gz
# tar zxvf memcached-1.4.8.tar.gz
# cd memcached-1.4.8
# ./configure -help
# ./configure -prefix=/usr/local/memcached
# make
# make install
在这个时候,不一定会编译通过,依旧会出现:
checking for libevent directory… configure: error: libevent is required. You can get it from http://www.monkey.org/~provos/libevent/
If it’s already installed, specify its path using –with-libevent=/dir/
因为libevent 这个包是系统默认安装的,没有安装相应的开发所用的头文件。
所以,还要使用如下命令来安装:
yum install libevent-devel
再编辑,即可通过。。
启用Memcached,
/usr/local/memcached/bin/memcached -d -m 128 -l 192.168.1.1 -p 11211 -u root

Ⅲ cygwin编译memcached效率怎么样

gcc -o xxx source.c -o 后面指定编译出来的程序的名字 *.c 就是要编译的源文件 这个命令是把当前目录下的source.c源文件编译成名为xxx的程序 原则上放在哪个目录下都行,但你要先到有源文件的目录下再执行编译命令。

linux编译安装命令

Linux编译安装相关命令,下面以Linux安装Mysql工具为例进行说明,代码如下:

1、测试环境在Linux MySQL下进行,版本系统为CentOS5,以下为相关软件:

mysql-5.1.30
memcached-1.2.6
libevent-1.4.7-stable
memcached_functions_mysql-0.8
libmemcached-0.26

2、编译安装Linux MySQL

[root@localhost~]#tarxzfmysql-5.1.30.tar_001.gz
[root@localhost~]#cdmysql-5.1.30
[root@localhost~]#./configure--prefix=/usr/local/mysql51
[root@localhost~]#make
[root@localhost~]#makeinstall
[root@localhost~]#./scripts/mysql_install_db--user=mysql--skip-name-resolve
[root@localhost~]#/usr/local/mysql51/bin/mysqld_safe
#连接符&这是放入后台,&&是前一个正确执行,才会执行后一个
#Linux编译安装流程./configure&&make&&makeinstall(默认目录安装)
#./configure--prefix=/usr/local/pcre&&make&&makeinstall(指定安装目录)

Ⅳ Linux下Memcached的安装步骤是什么呢

一、检查libevent
首先检查系统中是否安装了libevent
Shell代码
rpm -qa|grep libevent
如果安装了则查看libevent的安装路径,后续安装时需要用到
Shell代码
rpm -ql libevent
如果没有安装,则先安装libevent

安装libevent:
1.首先下载libevent安装包
Shell代码
wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz
2.解压缩安装包
Shell代码
tar zxvf libevent-1.4.12-stable.tar.gz -C /usr/local/
3.进入解压后的目录
Shell代码
cd libevent-1.4.12-stable/
4.配置编译、安装
Shell代码
./configure -prefix=/usr/libevent
make
make install
安装完libevent之后为了让动态链接库为系统所共享,需要执行以下动态链接库的管理命令ldconfig
不过在执行ldconfig命令之前需要注意以下libevent的安装目录。具体参见:http://chenzhou123520.iteye.com/blog/1925196

安装完libevent后正式开始安装memcached
1.首先是下载memcached的安装包
Shell代码
wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
2.修改安装包的执行操作权限
Shell代码
chmod 777 memcached-1.4.15.tar.gz
3.解压安装包到指定目录
Shell代码
tar zxvf memcached-1.4.15.tar.gz -C /usr/local
4.进入解压后的目录
Shell代码
cd /usr/local/memcached-1.4.15/
5.配置、编译、安装
注:configure时需要指定libevent的安装路径
Shell代码
./configure -with-libevent=/usr/libevent/ -prefix=/usr/local/memcached
make
make install
6.安装成功后启动一下看安装是否成功
Shell代码
/usr/local/memcached/bin/memcached -d -m 10m -p 11211 -u root
启动参数介绍如下:和上面的命令不对应
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,这里是10MB,
-u是运行Memcache的用户,这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,这里设置了256,按照服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,也可以启动多个守护进程,不过端口不能重复。

如果要给memcached上配置日志,参见:http://chenzhou123520.iteye.com/blog/1925209

PS:附上一个memcached启动的shell脚本
Shell代码
#!/bin/sh
echo "Start to start memcached server $(date)..."

MEMCACHED=/usr/local/memcached/bin/memcached

usage()
{
echo "usage: `basename $0` port"
}

if [ -n "$1" ]
then
{
pid=`ps aux|grep memcached|grep "$1" |grep -v grep|awk '{print $2}'`
if [ -n "$pid" ]
then
{
sleep 2
echo "kill memcached which port is $1 begin"
echo "pid:$pid"
kill -9 $pid
echo "kill memcached which port is $1 end"
sleep 2
}
fi
echo "begin to start memcached in port $1"
LOG_FILE=/var/log/memcached/memcached_$1.log
rm -f $LOG_FILE
$MEMCACHED -d -m 2048 -p $1 -u root -vv >> $LOG_FILE 2>&1
echo "start memcached end"
tail -f $LOG_FILE
}
else
{
usage
exit 1
}
fi
把该脚本命名为startup.sh
执行:./startup.sh 11211
其中11211为memcached的启动端口,也可以通过自定义的端口来启动
查看是否启动:ps aux|grep memcached
查看版本 :
cd /etc/init.d/
memcached -h
或者:
[nihaoya@SHANGH-39-DX-APP ~]# telnet 127.0.0.1 11211

Trying 127.0.0.1...

Connected to 127.0.0.1.

Escape character is '^]'.

stats

Ⅵ 如何编译和安装memcached

$ apt-get install git
$ git clone https://github.com/memcached/memcached.git
$ cd memcached
$ apt-get install autotools-dev
$ apt-get install automake
$ ./autogen.sh
$ ./configure
$ make
$ make test
$ make install

Ⅶ windows编译memcached需要pthread吗

下载之后解压会出现两个版本,32位系统用x86,64位系统用x64,里面各有一个.exe程序。
3建议把memcached的文件夹拷贝到自己的网站环境目录下方便统一管理。
4接下来就是安装了。打开命令提示符,进入到memcached所在目录。
5输入
memcached -d install
如果没有报错说明安装成功
6打开 开始-->管理工具-->服务,或者 运行-->services.msc来打开服务管理界面,前面的安装环节没有出现问题的话这里会多一个 Memcached Server服务。
7点击启动此服务,或者命令行输入 netstart "Memcached Server" 来启动memcached.
8至此,memcached安装完成。

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:710
制作脚本网站 发布:2025-10-20 08:17:34 浏览:972
python中的init方法 发布:2025-10-20 08:17:33 浏览:681
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:833
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:741
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1081
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:312
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:192
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:880
python股票数据获取 发布:2025-10-20 07:39:44 浏览:837