Cache VS Session VS Cookies 有哪些注意事项?
例如:
我经常使用 Session 变量,当用户开始订购产品然后去吃午饭并在几个小时后回来继续预订时,有时会在预订应用程序中出现问题。我将预订存储在会话中,直到用户确认或中止预订,因此当用户只需单击浏览器中的 X 并且永远不会返回时,我不需要与数据库对话并处理数据库中的中途预订。
我应该为此使用缓存或cookies还是某种组合?
(此外,当应用程序出现错误时,会话对象会自行重置,因此我会遇到更多问题)
我主要在做桌面编程,觉得我在这里缺乏很多知识,所以任何可以扩展在哪里使用缓存、会话、Cookie(或数据库)的人将不胜感激
编辑:从答案看来,我想要的是 DB 和 cookie 的组合。
- 我必须将预订存储在连接到会话 ID 的数据库中
- 将会话 ID 存储在 cookie 中(加密)。
- 每个页面都加载检查 cookie 并从数据库中获取预订
- 我有一个每周运行一次的清理程序,用于清理未完成的预订。
我不能将预订存储为 cookie,因为用户可以更改价格和其他敏感数据,我必须验证所有内容(不能信任数据)。
我做对了吗?
并感谢你们所有人的精彩解释!