我正在使用.Net 2008和Oracle 10g作为我的数据库。我得到的问题是在IIS中部署应用程序后,当多个用户一次访问同一页面时我收到错误。无法获得输出。
注意:用户一次访问同一页面,同一菜单。
我该如何解决这个问题?
答案 0 :(得分:1)
我的猜测是标准的线程安全/同步错误,很可能是由于某些静态资源(如静态连接)。显然,这是没有更多代码的纯粹推测,但它(=网站高度线程化)是一个令人惊讶的常见疏忽。
如果 是静态资源,那么......好吧,它可能不应该是静态的。每个请求,或者(特别是在连接的情况下)作用于本地代码(并让连接池担心重用)。
答案 1 :(得分:0)
您的意思是浏览器中没有任何内容?
查看程序的日志。有错误信息吗?
将一些跟踪语句放入代码中,以便您可以找出它的位置。
所以错误是说创建表失败了。您希望为每个用户创建一个表吗?看一下表创建的代码。考虑当该代码的两个副本同时运行时,正确的行为应该是什么。
再次在这些点添加跟踪代码,以便您可以看到发生了什么。通常,这比调试更容易,因为当多个线程运行时,调试器会妨碍现实。
答案 2 :(得分:0)
它“在你的机器上工作”吗? ;)
如果没有,请尝试在本地部署版本并将调试器附加到iis。在站点指向两个浏览器。每当您的浏览器出现问题时,请打开调试器的线程窗口,查看线程被阻塞/阻塞的位置。您还可以要求调试器停止抛出异常