memcache分布式实现、memcache分布…
来源:互联网 发布:美国失业金数据公布网 编辑:程序博客网 时间:2024/06/06 15:50
Memcache的分布式介绍
memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。服务器端仅包括内存存储功能,其实现非常简单。至于memcached的分布式,则是完全由客户端程序库实现的。这种分布式是memcached的最大特点。
Memcached的分布式是什么意思?
这里多次使用了“分布式”这个词,但并未做详细解释。现在开始简单地介绍一下其原理,各个客户端的实现基本相同。
下面假设memcached服务器有node1~node3三台,应用程序要保存键名为“tokyo”“kanagawa”“chiba”“saitama”“gunma”的数据。
图1
首先向memcached中添加“tokyo”。将“tokyo”传给客户端程序库后,客户端实现的算法就会根据“键”来决定保存数据的memcached服务器。服务器选定后,即命令它保存“tokyo”及其值。
图2
同样,“kanagawa”“chiba”“saitama”“gunma”都是先选择服务器再保存。接下来获取保存的数据。获取时也要将要获取的键“tokyo”传递给函数库。函数库通过与数据保存时相同的算法,根据“键”选择服务器。使用的算法相同,就能选中与保存时相同的服务器,然后发送get命令。只要数据没有因为某些原因被删除,就能获得保存的值。
图3
这样,将不同的键保存到不同的服务器上,就实现了memcached的分布式。memcached服务器增多后,键就会分散,即使一台memcached服务器发生故障无法连接,也不会影响其他的缓存,系统依然能继续运行。
Php+memcache实现分布式:
我们PHP的PECL中的Memcache扩展能够有效的解决Memcache的分布式问题,主要的接口就是
配置使用memcache存储session数据
session.save_handler =memcache
session.save_path="tcp://127.0.0.1:11211"
或者某个目录下的
php_valuesession.save_handler"memcache"
php_valuesession.save_path
再或者在某个一个应用中:
ini_set("session.save_handler","memcache");
ini_set("session.save_path","tcp://127.0.0.1:11211");
使用多个
存session:
- memcache分布式实现、memcache分布…
- memcache 分布式,算法实现
- memcache 分布式,算法实现
- Memcache如何实现分布式存取?
- memcache分布式
- memcache分布式
- memcache 分布式
- 分布式Memcache
- memcache分布式实现、memcache分布式的数据同步、memcache保存session数据的实现
- 基于XMemcache 的分布式 Memcache的实现
- Memcache分布式实现原理---Java_Memcache 源码分析
- memcache 是如何实现分布式存储的?
- 分布式memcache实现web集群session同步
- Memcache
- MemCache
- Memcache
- Memcache
- Memcache
- MYSQL之高级查询
- mysql事务
- MySQL存储过程详解 mysql 存储过程
- POWERDESIGNER name code 取消联动
- nginx之服务器
- memcache分布式实现、memcache分布…
- eAccelerator介绍
- Ubuntu下Qt 无法显示菜单栏
- LAMP网站架构方案分析
- Mysql事件学习
- PHP负载均衡
- MYSQL批处理
- 服务器端PHP多进程编程
- PHP-popen() 函数打开进程文件指针