这就是我需要提出的所有问题
我现在正在处理一个网站,我看不到将我的会话存储在数据库表中而没有这样做的真正重要区别。
答案 0 :(得分:4)
我有时会将会话数据存储在数据库中,这有几个原因。以下是最大的两个:
我唯一能想到的不使用数据库只是你要运行的查询数量。对于每个页面加载,您将有一个额外的查询来收集会话数据。但是,一个小的额外查询不应该产生那么大的差异。我在上面概述的两点超过了这个小成本。
希望有所帮助。
答案 1 :(得分:0)
当您无法控制谁可以访问存储会话文件的目录时,在共享主机上。在这种情况下,在DB中存储会话可以提供更好的安全性。
我自己没有经验的一种情况,但我认为是一个现实的场景:
在负载平衡服务器场上,可以通过多个服务器分派一个用户的后续请求。在这种情况下,您可以选择拥有一个中央数据库服务器。在这种情况下,如果您没有这样的集中式会话存储库,用户的会话数据就会丢失,因为他们可以根据请求切换服务器。
答案 2 :(得分:0)
当您使用多个服务器时,存在巨大差异,其负载平衡机制并不能保证给定的使用将始终发送到同一服务器:
当您使用某些共享主机时也有区别:使用基于文件的会话,如果这些位于服务器的“temporaty”目录中(如/ tmp),任何人都可能会读取您的会话文件,具体取决于服务器的配置。使用基于数据库的会话时,此问题不存在,因为每个用户将拥有不同的DB和DB用户。
答案 3 :(得分:0)
除上述帖子外: