【发布时间】:2015-01-29 18:07:35
【问题描述】:
我有一个基于 Symfony 2 构建的站点,该站点基本上由各种应用程序组成。选择应用程序后,我将该应用程序的 ID 存储在会话变量中。然后对于该应用程序的每次页面加载,都会查询数据库以获取该应用程序的详细信息。
将应用程序详细信息存储在会话变量中而不是仅存储应用程序 ID 不是更有效吗?
以这种方式存储应用程序详细信息有什么缺点,我需要担心什么安全风险吗?
非常感谢。
【问题讨论】:
-
数据量是多少?
-
也许您正在寻找有效的缓存和称为“varnish”的前端加速器。如果存在请求的缓存版本,则使用它根本没有对 symfony 的请求
-
就像@DRC 说的数据量是多少,是什么类型的数据?这是一个表单,也许您可以部分保存它,以便用户将来可以回到应用程序并完成它
-
最好只存储会话中对象的引用 (id) 以保持轻量级。然后,您可以轻松配置一个学说缓存层,将查询结果在内存中保留一段时间。希望对您有所帮助。
-
我建议在
Redis中缓存序列化对象,并将其放在mysqldb 的前面。基本上你需要在架构上解决这个问题。
标签: php database symfony session