2009-12-22 32 views
1

快速ASP.Net性能的问题...同ASP.Net应用程序 - 多IIS站点

我有,我想在IIS 6上运行对于我需要SSL证书的原因一个ASP.Net 3.5 SP1的应用在IIS中的不同站点上运行它。这是一个CMS,有些客户需要添加他们自己的SSL证书。

1)我可以在IIS中的多个站点上的磁盘上运行同一组ASP.Net文件,还是需要镜像它们?

2)在性能方面我需要做些什么,例如,从每个站点有多个数据库连接?或者他们会'汇集'?!另外,我使用Linq to SQL并使用ASP.Net的缓存缓存结果。对于每个IIS站点具有基本相同的数据的单独缓存是否会产生开销?此场景是否有其他性能或应用程序设计考虑事项?

3)在相同的应用程序池下运行IIS站点有什么区别吗?

或者没有人有完全不同的建议?

任何指导,你可以给予非常感谢。我在这里寻找尽可能多的不同意见和经验,所以如果你能提供帮助,请加上答案。

干杯, 添

+0

属于serverfault.com – Oded 2009-12-22 11:25:14

回答

1

维护将是比较容易的方式,如果你只有一个IIS站点来管理。更有效的方法是在别的地方处理SSL问题(例如,硬件负载平衡器,内容切换器,Apache盒等),并将单个版本的应用程序运行的单个IIS实例反向代理。共享应用程序池将无济于事(假设您将SQL Server与托管客户端一起使用),因为每个Web应用程序都有自己的AppDomain,因此也有自己的连接池。共享应用程序池使他们共享一个进程,但不是一个应用程序域。

我已经在廉价版本上安装Apache,只在端口443上安装Apache(因为需要很多IP /证书组合),然后将Apache设置为反向代理在同一台机器上只侦听端口80上的IIS(但是用于任何主机头)。

0

我同意为相同的应用程序运行不同的网站是没有意义的。

您可以使用IIS管理器在网站中设置SSL端口。如果您未将IIS设置为需要证书,则某些用户可以使用HTTP版本而不出现证书错误,其他用户可以使用SSL。