asp.net Web应用程序在x64 vs x86上编译和部署

时间:2009-01-14 19:58:24

标签: .net asp.net visual-studio-2008

由于没有内存错误,我的网络应用程序几乎每周崩溃一次。虽然服务器有8GB的内存,它的服务器是2003 x64。几乎5gb总是免费的。

我在Studio 2008中使用Any CPU选项编译我的应用程序。

我用来构建它的笔记本电脑有32位远景。

我的网络应用程序是在x86还是x64下运行?

如果没有在64bit下运行那么如果编译方式不同,我会为我的Web应用程序获得更多内存吗?在.net中使用64位是否有任何优势或.net本身仅限于使用特定数量的内存?

1 个答案:

答案 0 :(得分:1)

如果您在Web应用程序中内存不足,则可能是您做错了什么。这可能意味着您已经泄漏了传统的COM对象,或者您正在滥用缓存或会话,或者您有循环引用或内存泄漏。

重新编译/运行x64可以推迟内存不足错误,但不会改变它。

如果您在x86上编译它但使用了AnyCPU选项,并将其部署到Windows 2003上未修改的IIS6实例,则它将以x86身份运行。您可以通过查看Windows Server 2003计算机上的Taskman来测试此假设。如果w3wp.exe有* 32,那么你运行的是32位。