我开发了一个Web应用程序,它使用由Web主机(在地面上)和在Amazon Web Services EC2上运行的服务器托管的Web服务器和数据库。两个服务器可以在会话期间由用户使用,并且两者都需要知道关于用户的一些会话信息。我不想发布两个服务器所需的信息,因为我不希望它对浏览器/ Firebug等可见。所以我需要我的会话数据在服务器上保持不变。我认为这意味着最好的选择是在数据库中而不是在会话中存储我需要的所有/部分数据。最简单的做法似乎是保持会话,但是在服务器之间POST session_id,并使用它作为从数据库中的'user_session_data'表中查找我需要的数据的关键。
我查看过Tony Marston的文章“Saving PHP Session Data to a database” - 我应该使用这个还是将表格包含我需要的会话数据和session_id作为关键字?创建我自己的表和一组用于存储数据库中所需数据的方法的缺点是什么?
答案 0 :(得分:2)
如果EC2和数据库服务器之间的传输速度和响应时间足够好,我发现存储会话数据没有问题,并且在将用户转移到其他服务器时传递session_id。
-
将会话数据存储在数据库中是很常见的做法。 “在会话上存储数据”并不意味着任何实际的存储方法 - 在磁盘上创建文件只是PHP的默认设置,因为它不需要任何设置。