0

0

Memcache文件系统memcachefs部署和使用

php中文网

php中文网

发布时间:2016-06-07 14:56:04

|

1586人浏览过

|

来源于php中文网

原创

Memcache 文件系统memcachefs 部署和使用 介绍 memcachefs是基于FUSE的memcached文件系统,将memcache服务挂载到本地。允许查看缓存中的数据,就好像是磁盘上的文件。memcache的操作都将转换成针对普通文件般的操作。 项目地址:http://memcachefs.sourcefor

memcache文件系统memcachefs部署和使用



介绍


memcachefs是基于FUSE的memcached文件系统,将memcache服务挂载到本地。允许查看缓存中的数据,就好像是磁盘上的文件。memcache的操作都将转换成针对普通文件般的操作。


项目地址:http://memcachefs.sourceforge.net/

 

使用场景


基于本地磁盘缓存文件都可以用memcachefs来实现,效率上比磁盘更强大。。比如session文件等等。 如果先前的session信息就存在本地磁盘上,可以直接将memcache挂载到当前session目录上,无需更改程序,完美解决。

 

安装


1.安装依赖(使用root安装)


依赖

  • FUSE 2.5 or later

  • libmemcache 1.4 or later

 

a)安装fuse-2.9.3.tar.gz

cd /tmp
wget http://hivelocity.dl.sourceforge.net/project/fuse/fuse-2.X/2.9.3/fuse-2.9.3.tar.gz
tar zxvf fuse-2.9.3.tar.gz
cd fuse-2.9.3
./configure
make
make install


b)挂载fuse内核模块

modprobe fuse
lsmod | grep "fuse"


c)安装libmemcache-1.4.0.rc2.tar.bz2

cd /tmp
wget http://people.freebsd.org/~seanc/libmemcache/libmemcache-1.4.0.rc2.tar.bz2
tar xvf libmemcache-1.4.0.rc2.tar.bz2
cd libmemcache-1.4.0.rc2
./configure
make


编译出错,输出如下:

memcache.c: At top level:
../include/memcache/buffer.h:73: warning: inline function 'mcm_buf_remain_off' declared but never defined
../include/memcache/buffer.h:72: warning: inline function 'mcm_buf_remain' declared but never defined
../include/memcache/buffer.h:66: warning: inline function 'mcm_buf_len' declared but never defined
../include/memcache/buffer.h:73: warning: inline function 'mcm_buf_remain_off' declared but never defined
../include/memcache/buffer.h:72: warning: inline function 'mcm_buf_remain' declared but never defined
../include/memcache/buffer.h:66: warning: inline function 'mcm_buf_len' declared but never defined


解决方法,参考:

http://pietercvdmlinux.blogspot.com/2012_07_01_archive.html

zDiaLog弹出层效果
zDiaLog弹出层效果

代替window.open、window.alert、window.confirm;提供良好的用户体验; 水晶质感,设计细腻,外观漂亮; 兼容ie6/7/8、firefox2/3、Opera;弹出框在ie6下不会被select控件穿透; 无外部css文件,引用Dialog.js即可使用; 对iframe下的应用作了充分考虑,适合复杂的系统应用; Dialog显示的内容(三种):1、指向一个URL的

下载
wget 'http://svnweb.freebsd.org/ports/head/databases/libmemcache/files/patch-fix-inline?revision=248965&view=co' -O libcache.patch
patch -p0 < libcache.patch


再次

make
make install

 

2.下载安装memcachefs

mkdir /usr/local/memcachefs
cd /tmp
wget http://jaist.dl.sourceforge.net/project/memcachefs/memcachefs/0.5/memcachefs-0.5.tar.gz
tar -zxvf memcachefs-0.5.tar.gz
cd memcachefs-0.5
./configure --prefix=/usr/local/memcachefs
make
make install
cd /usr/local/memcachefs

 

3.挂载memcached

mkdir /usr/local/cache
./bin/memcachefs 192.168.11.52:11211 /usr/local/cache #将远程的memcache挂载到本地


报错如下:

“./bin/memcachefs: error while loading shared libraries: libmemcache.so.0: cannot open shared object file: No such file or directory”


解决方法:

将/usr/local/lib添加到/etc/ld.so.conf

echo "/usr/local/lib" >> /etc/ld.so.conf
/sbin/ldconfig


查看挂载情况:

mount -l

memcachefs on /usr/local/cache type fuse.memcachefs (rw,nosuid,nodev)

 

使用


1.基本操作

cd /usr/local
echo "helloworld" > cache/test_key #设置一个cache数据,文件名是键,文件内容是值。等同于set key value操作。
cat cache/test_key #获取cache数据。等同于get key操作。
ll cache/ #列出所有键。注意第五列不是指大小,而是表示字符长度。第六七列时间属性。
rm cache/test_key #删除cache数据,等同于delete key操作。
mv cache/username cache/username.bak #重命名

 

2.卸载

# mount #查看挂载
# umount /usr/local/cache #卸载
# fusermount -u /usr/local/cache #卸载


3.使用telnet客户端测试


set a 0 10 3 #10s过期。10s过后,cache目录下的a文件将被删除。

get username.bak #telnet方法获取memcachfs设置的cache数据

cat cache/a #通过memcachefs获取键a数据

[root@test01 local]# telnet 192.168.11.52 11211
Trying 192.168.11.52...
Connected to 192.168.11.52.
Escape character is '^]'.
set a 0 10 3
aaa
STORED
get username.bak
VALUE username.bak 0 6
ryanxu
END
quit
Connection closed by foreign host.
[root@test01 local]# cat cache/a
aaa


相关专题

更多
c++主流开发框架汇总
c++主流开发框架汇总

本专题整合了c++开发框架推荐,阅读专题下面的文章了解更多详细内容。

79

2026.01.09

c++框架学习教程汇总
c++框架学习教程汇总

本专题整合了c++框架学习教程汇总,阅读专题下面的文章了解更多详细内容。

46

2026.01.09

学python好用的网站推荐
学python好用的网站推荐

本专题整合了python学习教程汇总,阅读专题下面的文章了解更多详细内容。

121

2026.01.09

学python网站汇总
学python网站汇总

本专题整合了学python网站汇总,阅读专题下面的文章了解更多详细内容。

12

2026.01.09

python学习网站
python学习网站

本专题整合了python学习相关推荐汇总,阅读专题下面的文章了解更多详细内容。

15

2026.01.09

俄罗斯手机浏览器地址汇总
俄罗斯手机浏览器地址汇总

汇总俄罗斯Yandex手机浏览器官方网址入口,涵盖国际版与俄语版,适配移动端访问,一键直达搜索、地图、新闻等核心服务。

71

2026.01.09

漫蛙稳定版地址大全
漫蛙稳定版地址大全

漫蛙稳定版地址大全汇总最新可用入口,包含漫蛙manwa漫画防走失官网链接,确保用户随时畅读海量正版漫画资源,建议收藏备用,避免因域名变动无法访问。

370

2026.01.09

php学习网站大全
php学习网站大全

精选多个优质PHP入门学习网站,涵盖教程、实战与文档,适合零基础到进阶开发者,助你高效掌握PHP编程。

45

2026.01.09

php网站搭建教程大全
php网站搭建教程大全

本合集专为零基础用户打造,涵盖PHP网站搭建全流程,从环境配置到实战开发,免费、易懂、系统化,助你快速入门建站!

12

2026.01.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
memcache基础课程
memcache基础课程

共6课时 | 1.6万人学习

CSS3 教程
CSS3 教程

共18课时 | 4.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号