gpt4 book ai didi

asp.net - 将 Asp.net 应用程序移至负载平衡环境

转载 作者:行者123 更新时间:2023-12-02 21:11:59 25 4
gpt4 key购买 nike

我有一个在单个服务器上运行良好的应用程序。我的客户现在希望将其转移到负载平衡的环境中。这样做时哪些东西可能会咬我?

目前我所知道的

  • session 状态,以及
  • 机器 key 。

这两个都被描述了 here例如,所以我正在寻找除此之外的其他内容。

这些similar questions ,但第一个解决一般的负载平衡问题,我正在寻找迁移指南,第二个解决特定问题。

最佳答案

您可能会遇到的一件事是数据库服务器上的负载增加。如果您实现任何数据的服务器端缓存,您将习惯于您的站点针对给定数据集访问数据库一次,缓存数据,然后在缓存超时之前不会再次访问数据库。对于经常访问的数据来说,这是一个很好的策略。

在负载均衡的环境中,后续请求可能会发送到不同的服务器,并且相同的数据会访问数据库两次。如果您有 2 台以上服务器,则更多。这本身并不坏,但建议您密切关注。如果数据库正在排队,则运行网络场的好处可能会被抵消。与往常一样,进行基准测试、分析并运行测试。

解决这个问题的一种方法是使用粘性 session 。这是一种基于路由器的方法。一旦建立用户 session ,来自该用户的所有请求都将路由到同一服务器。这有其缺点,最明显的是,负载平衡的效率可能会降低,更不用说失去服务器时的问题了。此外,只有当您缓存大部分特定于用户的数据(例如分页搜索结果)时,它才会有帮助,这些数据仅缓存很短的时间。

另一个解决方案是拥有分布式内存缓存,例如 memcached、Velocity 或 NCache。还有其他一些,但这些是我合作过的。

与上述无关的另一件事需要注意的是:如何处理用户上传的文件。许多网站允许用户上传文件。如果此类文件之前尚未保存到中央存储(例如数据库或公共(public)文件共享),则需要将其保存。

关于asp.net - 将 Asp.net 应用程序移至负载平衡环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3531962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com