我有一个应用程序(Magento),它有一个抽象的会话存储层。我试着想象最好的存储会话的方法。
mysql数据库?我想要一个有一个非常大的innodb_buffer_pool_size的专用数据库,所以它基本上就像内存缓存和磁盘备份一样。我正在考虑只为会话使用一个单独的DB,并将其他DB内容放在单独的DB/DB服务器上。
备忘录?这很好,但是我有点担心如果服务器崩溃会发生什么呢?我会因为崩溃而失去会话的分区,因为据我所知,Memcache是不被信任的。我能让它不被信任吗?(我刚刚被告知我可以使用>= 3模块
tmpfs内存文件存储?这是可行的,但我必须使用rsync或检测该文件夹中何时发生写的东西来与所有其他服务器同步会话。我相信一定有什么东西存在的。
其他我没想过的解决方案?会喜欢创意的。
谢谢!
发布于 2011-08-21 14:14:52
备忘录?这很好,但是我有点担心如果服务器崩溃会发生什么呢?我会因为崩溃而失去会话的分区,因为据我所知,Memcache是不被信任的。我能让它不被信任吗?(我刚刚被告知我可以使用>= 3模块
我在用再缓存。开始时如下所示:
memcached -d -p 11211 -u memcached -m 64 -c 1024 -P /var/run/memcached.pid -x <server2_ip>上memcached -d -p 11211 -u memcached -m 64 -c 1024 -P /var/run/memcached.pid -x <server1_ip>PHP Memcache扩展的配置:
extension=memcache.so
memcache.allow_failover = 1
memcache.redundancy = 1
memcache.session_redundancy=2
memcache.hash_strategy = consistent以及php.ini中的会话处理程序:
session.save_handler = memcache
session.save_path="tcp://ip1:11211, tcp://ip2:11211"https://serverfault.com/questions/299335
复制相似问题