我的问题是如何最好地处理会话的临时数据。该场景类似于购物车或类似投注单。当用户浏览网站并添加具有唯一ID的项目时。如果用户想要提交数据,我只对以这种方式收集的数据感兴趣。
我正在使用jQuery,JSON和MS SQL DB开发ASP .Net 3.5。
我认为有几种方法可以做到这一点。
我真的想在这里考虑性能,但我不想最终得到1000行的JavaScript代码。
有关pro和con的最佳实施的任何建议吗?
干杯, 斯蒂芬
答案 0 :(得分:1)
将事物存储在会话cookie中并不是一个好主意,因为每次请求都会将其发送回服务器。如果你能找到一种方法在不使用cookie的情况下将状态存储在客户端上,那么你可能有一个可行的以客户为中心的选项,但我无法想到任何便携式的东西。 HTML5和Flash中有些东西可以做到,但是你不想去那里 - 但是,对于前者,完全是后者的情况。
我会使用AJAX回发到服务器(对于无法处理的浏览器,可以优雅地降级到完整帖子),然后将信息存储在易失性存储器中 - 即不存储在数据库中。只在需要时将其写入数据库。这在Java中非常容易(您可以将信息与会话相关联),所以我假设ASP.net也有一些方法可以做到这一点。
答案 1 :(得分:0)
这三种可能性对我来说都很好。但问题是:您期望有多少流量?
您提出的每个选项都适合给定方案。假设您将拥有A LOT(成千上万)用户,而不是可用的硬件很多,那么您应该尝试尽可能减少对应用程序的请求数量,并尽可能多地将数据存储在客户端中,然后再将其发送到服务器。
如果它是较小的应用程序,那么使用Session或其他一些中央数据库存储就可以了。
这完全取决于您的要求。