ASP.NET 应用程序可伸缩性最佳实践指南

Posted

技术标签:

【中文标题】ASP.NET 应用程序可伸缩性最佳实践指南【英文标题】:ASP.NET applications scalability best practices guide 【发布时间】:2011-01-22 22:44:06 【问题描述】:

是否有由微软或其他人发布的关于创建可扩展 Web 应用程序的最佳实践的指南?喜欢使用的模式以及如何进行数据访问。

【问题讨论】:

【参考方案1】:

我能给出的最好建议是做这三件事(大致按顺序):

    避免不必要的回发 避免过多的视图状态 花时间优化数据库

【讨论】:

使用linqdatasources绑定控件怎么样,是好是坏? 没有错,只要你符合上述几点:它会导致额外的回发 - 它会导致视图状态吗(提示:视图状态独立于数据源),你可以优化你的数据库时机成熟时编写代码(我对 linq 的经验是您通常可以)。 多年后回到今年,我将补充:4。避免不必要的内存分配。【参考方案2】:

The Microsoft Patterns & Practices group 是一个很好的一站式购物场所。

编辑:这是他们专门针对Scalability and Performance 的指南。 Chapter 6 包含特定于 ASP.NET 性能的信息,Chapter 17 包含有关调整的信息。

【讨论】:

ASP.Net 的第 6 章 (msdn.microsoft.com/en-us/library/ms998549.aspx) 和第 17 章 (msdn.microsoft.com/en-us/library/ms998583.aspx)。 @adrianbanks - 用您的特定链接编辑了主要答案。谢谢。【参考方案3】:

这是一篇关于规模主题的优秀文章:http://msdn.microsoft.com/en-us/library/bb924375.aspx 基本上讨论了负载平衡、会话亲和性和缓存问题,所有这些在任何规模讨论中都变得很重要。如果您之后有具体问题,请告诉我们。

【讨论】:

【参考方案4】:

我会阅读MVC Storefront series。它基于 ASP.NET MVC,但演示了一种创建松散耦合、良好架构的网站的好方法。您可以根据需要轻松地将大部分原则应用于 Web 表单站点(尽管如果您有选择的话,我建议您使用 MVC...)

【讨论】:

以上是关于ASP.NET 应用程序可伸缩性最佳实践指南的主要内容,如果未能解决你的问题,请参考以下文章

后端开发最佳实践——高可用性高性能高伸缩性高稳定性高智能

Kubernetes应用程序设计指南

Kubernetes应用程序设计指南

3个自动伸缩机制,帮你降低Kubernetes的成本

asp.net core 读写任意文件

架构高可用可伸缩