将用户会话存储在与我的应用相同的数据库中是不是一个坏主意?我无需在MongoHQ支付第二个DB。
答案 0 :(得分:1)
除了真正高流量(绝对超过100-200个独立访问者:S,尝试更多像100万 - 每小时200万个)网站的会话处理的数据库分离可被视为微优化。这主要是由于实现单独的连接处理所需的工作,尤其是在PHP中。
不仅如此,PHP驱动程序每个数据库(每个凭据)保持连接,这意味着您要打开更多连接,并且由于连接需要很长时间才能实例化,因此打开这样的新连接被认为是不合适的会议通常。
正如@Derick正确提到的那样,每个进程实际上建立了一次连接。这意味着在fcgi设置中排序连接的过程不是太大的问题。
即使这不是一个问题,但似乎仍然缺少不需要的资源。
所以不,我不建议将会话处理分离到不同的数据库中,我实际上会认为它是无法执行的和微观优化。
答案 1 :(得分:0)
这不一定是个坏主意。我大部分时间都在做同样的事情,不仅要确保你在一个数据库中拥有所有必要的东西。
答案 2 :(得分:0)
当你的会话数量不是很多时,想法也不错。例如,如果一天中有100-200个唯一身份访问者。
如果您的网站变得流行,使用Redis可能是一个好主意 - 是一个开源的,BSD许可的高级键值存储。
答案 3 :(得分:0)
我不这么认为,如果我没错,WordPress和Joomla可能会将密码保存在同一个数据库中,但是在不同的表中。我不确定,一次查看代码,因此可能需要更多验证。但是您输入一次数据库名称,因此很明显登录详细信息也在同一个数据库中。其他一些我现在不记得的代码也做了同样的事情(学校的管理申请。忘了它的名字)。所有开源代码。
所以你可以这样做,只是确保数据库尽可能安全,不要以纯文本格式保存密码。确保您为每个人使用独特的盐只是为了让访问帐户变得更加困难。但我相信你知道的。
但我的结论是你可以,我从别人那里学习,并且看到其他人更先进。 (开源代码)