ASP.考虑到Azure上的可伸缩性,NET网站已经多线程了



这涉及到另一个问题,windows azure平台如何为我的应用程序扩展?只运行多线程应用程序将受益于多核架构。

我的问题是,作为ASP。. NET/IIS(或任何其他web应用程序和web服务器)基本上是多线程的,它不会利用多核的优势吗?

假设该站点是一个简单的web应用程序,具有一些逻辑,在页面显示时执行,没有显式的多线程实现。

我相信这是为控制台应用程序或调度只需要多线程编程实现它利用多核,请建议。

IIS通过设计实现充分利用了所有可用的操作系统CPU内核。然而,决定选择哪种VM大小实际上是特定于应用程序的。我几乎没有看到任何大于Medium的东西被用于Web角色!

最常见的情况是为Web角色使用Small VM,并在不必要时扩展到多个实例。我总是建议客户从小型VM开始,做一些性能/负载测试,同时密切监视VM,以评估是否需要更大的VM(如果有的话)。从弹性、持久性以及很多情况下甚至性能的角度来看,依赖4个小型vm比1个大型vm要好得多!

请记住,使用较小的步骤(一次1或2个CPU内核,意味着小型或中型VM)进行扩展总是更容易,而且成本更低。

在这个世界上存在许多业务需求,需要在web应用程序上多线程,如生成数据并将其插入数据库,通过AJAX导出excel…对于一个小的虚拟机和一个最小的RAM和强大的核心,如果你不管理好你的逻辑和利用硬件,你的RAM很快就会耗尽。

最新更新