什么用于会话管理?

Bra*_*tor 12 session memcached cassandra nosql redis

我正在尝试做一些研究,以便在多服务器环境中找到会话管理的最佳选择,并且想知道人们发现了哪些成功以及为什么成功.利弊.

RDBMS - 更慢.更好地用于其他数据.

Memcached - 您不能在不丢失会话的情况下删除memcached服务器

Redis - 修复了memcached的问题,但是可扩展性的简易性呢?容错?

Cassandra - 具有良好的容错能力.优点和缺点?

MongoDB,其他?

谢谢!

sdo*_*lgy 8

就个人而言,我使用Cassandra来保存php会话数据.它使用session_id:{session_data_as_json}将它存储在单行的单个列中,并在列上设置TTL,以便自动执行垃圾清理.工作一种享受.

我使用cassandra,因为它已经拥有所有其他用户数据...对于缓存,我在所有前端Web服务器上启用了APC并且没有任何问题......

这是最好的方法吗?不确定.它适合我需要实现的环境,技术和业务规则....

旁注,我确实开始使用本机php - > cassandra会话处理程序:https: //github.com/sdolgy/php-cassandra-sessions - 这显示了如何使用PHPCassa和Cassandra设置TTL


yoj*_*o87 5

Redis - 修复了memcached的问题,但是可扩展性的简易性呢?容错?

Redis支持复制,即将到来的集群还应支持跨多个节点的数据分片.