【问题标题】:Why not storage PHP SESSION on a NFS Volume? [closed]为什么不在 NFS 卷上存储 PHP SESSION? [关闭]
【发布时间】:2012-09-15 04:47:58
【问题描述】:

我知道存储PHP SESSION 的最佳方式是 PHP 集群中的“在 memcached 中处理”。

但是,我想知道是否有人将 PHP SESSION 文件存储在 NFS(网络文件系统)、GFSHDFS 中?

我想知道它是否有风险? 还是表现不佳?

我认为可以提供单点登录。

【问题讨论】:

  • 没有理由投票结束这个问题。这是一个完全有效的问题。
  • @kin 也许改写你问题的开头:“我知道最好的方法......”

标签: php storage


【解决方案1】:

简短的回答是,您不应该使用 NFS 之类的东西进行会话管理,因为它不能正确处理任何客户端服务器都可以访问的分布式会话文件的锁定。另外,很多解决方案都不能正确处理异步读取。

另外,如果您的网络文件系统“消失”,您将陷入真正的混乱,因为您需要开始检测 PHP 应用程序中的错误挂载。

也就是说,如果您期望低吞吐量,您可以将 NFS 用于会话管理,但老实说,有更好的解决方案。

如果我必须排名...我会说内存存储中的任何一个都是最好的。内存缓存/Redis。 我喜欢使用 Redis 5 分钟写入磁盘。

【讨论】:

  • 谢谢,我同意内存性能最好。
【解决方案2】:

技术上可以做到,但性能会低于标准。存储数据最快的介质始终是内存,这就是为什么建议使用内存中的解决方案(如 memcached)来存储会话数据。将数据写回磁盘有开销,甚至连接到网络硬盘然后在该磁盘上执行写入的开销更大。

【讨论】:

    猜你喜欢
    • 2012-01-31
    • 1970-01-01
    • 2010-10-10
    • 1970-01-01
    • 1970-01-01
    • 2019-11-17
    • 1970-01-01
    • 1970-01-01
    • 2019-02-17
    相关资源
    最近更新 更多