zoukankan      html  css  js  c++  java
  • [转] 多域名THINKPHP利用MEMCACHE方式共享SESSION数据

    http://blog.csdn.net/youngerchen/article/details/6651110   不错的文章,易懂

    TP 本身只支持一台,如何配置多台memcache?网络上有答案
    http://www.poluoluo.com/jzxy/201603/466251.html

    http://blog.csdn.net/andy1219111/article/details/7599336/

    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实现分布式

    我们PHPPECL中的Memcache扩展能够有效的解决Memcache的分布式问题,主要的接口就是 addServer() 函数,具体关于addServer()函数的实现可以参考该扩展源代码。那么现在就存在第二个问题,就是说无法同步数据,可以理解为MySQLMaster/Slave的机制,就是说如果我们有多台的Memcache服务器,使用addServer函数的话,每个服务器存储的数据都是唯一的,也就是说每个memcached服务器上存储的数据不是统一的,而是各自保存了不通的数据。



    -------------------------------------------------------------

    配置多台M

    memcache  客户端 (负责根据键值计算   选择存储的服务器), 服务器端 只负责存储

  • 相关阅读:
    javascript基础学习三---DOM操作
    小程序-微信开发者工具使用
    回溯算法实践--工作分配问题
    回溯算法理解
    贪心算法--删数问题
    单线程与多线程的区别
    【图解】Web前端实现类似Excel的电子表格
    详细了解JS Map,它和传统对象有什么区别?
    带你彻底弄懂nth-of-type与nth-child的区别
    input 纯数字输入 限制长度 限制 最大值
  • 原文地址:https://www.cnblogs.com/linewman/p/9918890.html
Copyright © 2011-2022 走看看