我应该使用会话状态还是SQL

时间:2011-06-16 09:11:19

标签: asp.net sql session

我正在建立一个论坛,我需要按主题设置所有主题,然后按主题编号设置。我可以通过编程或使用t-sql来完成此操作。

以编程方式,我将在会话状态中保存页码和主题的字典。我不知道它如何影响性能。使用t-SQL,我将不得不使用一些逻辑,然后为线程分配页码。在性能方面,哪一个更好?

2 个答案:

答案 0 :(得分:1)

你的问题并不是很清楚,但听起来好像你想要阅读所有内容,处理它并为了性能而缓存它,你应该使用适用于所有用户的应用程序缓存,而不是只有会话缓存适用于当前用户。如果您使用会话缓存,则每个用户都将拥有相同的数据 - 除非您缓存对特定用户排序或唯一的数据。 (你的问题不清楚你的目的是什么。)

一般情况下,如果有大量不必要的数据来回传递,必须运行多个查询等,那么您应该使用SQL方法。当您需要的只是发送到Web层的汇总的最终版本时。 “很多”取决于许多因素,其中没有一个因素包含在您的问题中。

在没有任何更多背景的情况下,我们所能说的只是分析哪个更快。

答案 1 :(得分:-2)

只要IIS工作进程回收,进程内会话状态就会消失。这通常至少每天一次。因此,对于论坛,会话状态根本不是一个选项。