您的位置:首页 > 数据库 > Memcache

基于memcache架构1TB高速内存池方案设计

2014-08-08 14:09 232 查看





配置magent代理memcached,让web层进行透明调用

下载地址http://code.google.com/p/memagent/

# ln -s /usr/lib64/libm.so /usr/lib64/libm.a ###centos 6 以上要建立软连接动态库

# wget https://memagent.googlecode.com/files/magent-0.6.tar.gz
# tar zxvf magent-0.6.tar.gz

# cd magent-0.6.tar.gz

# 由于magent程序bug比较多,需要手功修改一些代码

vim ketama.h
在开头加入
#ifndef SSIZE_MAX
# define SSIZE_MAX      32767
#endif
vim Makefile
CFLAGS = -Wall -g -O2 -I/usr/local/include $(M64)
改为:
CFLAGS = -lrt -Wall -g -O2 -I/usr/local/include $(M64)


# make
# cp magent /usr/bin/magent



# magent -h #查看帮助

#####安装memcached请参照相关文档###

# magent - u root -p 11211 -n 20000 -s 192.168.1.11:11211 -s 192.168.1.12:11211
-b 192.168.1.101:11211 -b 192.168.1.102:11211


###有多台服务器按规则添加即可,实行1:1的备份策略

magent的数据以hash算法进行存储,备份服务器可以一台也可以多台,一台汇总,多台则水平分布备份

当master主机down掉后,magent向备份服务器查询数据返回,master主机故障恢复后数据丢失会造成命中失败(这个问题好无奈)

测试telnet 192.168.1.10 11211 ##magent 服务器VIP地址

magent 兼容memcache协议,对上层web不需要任何逻辑更改

由于magent承担出入数据口,普通100M网卡可能承受不住,建议更换千兆或万兆网卡
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: