【问题标题】:how to handle 1000 concurrent user requests per second in asp.net web api如何在asp.net web api中每秒处理1000个并发用户请求
【发布时间】:2020-02-15 06:34:18
【问题描述】:

我们正在使用 Web API 来处理每秒 1000 个并发用户请求。我们正在通过控制台应用程序访问 API。我们收到消息 500 内部服务器错误。所以我们如何处理并发 用户请求顺利吗?

(添加一个案例 - 在 100 次点击中 - 98 次点击是通过(200- ok),2 次是失败 - 错误 500。 所有时间都相同的参数?

【问题讨论】:

  • 您可以使用 postman getpostman.com 之类的东西来模拟您的帖子和请求。内部服务器错误意味着无法找到服务器。确保访问和 url。

标签: c# asp.net asp.net-web-api model-view-controller


【解决方案1】:

您需要将主要注意力集中在两件事上 - 在 asp.net 和数据库方面。

在为这种情况开发 asp.net 应用程序时,您可能会发现使用异步控制器/页面 (http://msdn.microsoft.com/en-us/library/ee728598(v=vs.100).aspx) 来优化服务器上​​的负载并确保网站能够处理多个请求而不会产生巨大延迟很有用。另一个需要考虑的重要事项是缓存层——您可以从一开始就加载问题并缓存它们,从而最大限度地减少访问页面的时间。

此外,您应该仔细考虑数据库方面,您可能会发现利用查询提示(READPAST、NOLOCK、ROWLOCK)并以智能方式设计表很有用。

【讨论】:

  • 感谢 so_op,我们还使用了 [SessionState(SessionStateBehavior.ReadOnly)],[SessionState(SessionStateBehavior.Disabled)]。但它不能正常工作也使用锁和队列
猜你喜欢
  • 2018-08-24
  • 1970-01-01
  • 2019-08-31
  • 1970-01-01
  • 1970-01-01
  • 2019-02-08
  • 2017-10-15
  • 2015-08-27
  • 1970-01-01
相关资源
最近更新 更多