确定 Web 应用程序支持的用户数量

发布于 2024-07-25 05:03:43 字数 126 浏览 8 评论 0原文

我正在开发一个面向企业客户的 ASP.NET Web 应用程序。 谁能提供一些关于如何确定我的应用程序可以支持的用户数量的指南?

此外,该应用程序使用会话变量,因此目前仅限于一台 Web 服务器,直到情况发生变化。

I'm developing an asp.net web application targeted to business customers. Can anyone provide some guidelines on how I can determine the number of users my application can support?

Also, the application uses session variables so its currently limited to one web server until that changes.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

只为一人 2024-08-01 05:03:44

只有您/您的团队才能确定可以支持的确切数量。

此处的关键是深入了解您的问题域以及处理层的明显分离。

这种分离使您能够隔离瓶颈,并更轻松地调整最低性能因素的性能,然后继续处理下一层/性能限制。

不要做出假设,因为您会发现与您的假设无关的影响可能会让您感到惊讶。

  1. 按比例设计
  2. 出于性能调整原因以及您自己的理智,设计为具有单独的“层”——这也是一个更好的设计原则,这也是开发分段​​的直接原因之一。
  3. 测试 – 根据设计规范对各层进行“通过/失败”测试的设计只是测试的一个方面。 您的问题可以通过您选择在应用程序中使用的技术、架构和工具的性能影响来回答。 计划对应用程序的每个部分进行更改以解决性能问题。
  4. 从每个“层”收集性能指标,在发现性能挑战本质时调整每个层。 规划并发现如何量化每一层的性能测量。
  5. 在某些时刻,您必须在性能和“酷/哇”因素之间做出妥协。 每一个都会影响您营销解决方案的能力,然后您必须确定哪一个会产生最大的影响。

这是我用来衡量设计质量的痛苦因素之一 - Plan All I增量需要并已在其他地方和博客中讨论过。

就我个人而言,我经常根据性能做出设计决策,但您的营销策略可能会有所不同。

Only you/your team can determine the exact numbers that can be supported.

Your key to here is having a deep understanding of your problem domain and a distinct separation of the processing layers.

The separation allows you to isolate the bottlenecks, and tune the performance of the lowest performance factor much more easily, then move on to the next layer/performance limitation.

Do not make assumptions, as you will find impact unrelated to your assumptions that might surprise you.

  1. Design to scale
  2. Design to have separate “layers” for performance tuning reasons as well as your own sanity – it is also a better design principle and this is directly, one of the reasons development is segmented.
  3. Test – design of “pass/fail” testing of layers to a design specification is only one facet of testing. Your question is answered by the performance impact of the technology, architecture and tools you choose to utilize in your application. Plan to make changes to each part of your application to address performance issues.
  4. Gather performance metrics from each “layer”, tune each layer as you make discoveries of performance challenge nature. Plan for and discover how to quantify the performance measurements of each layer.
  5. You WILL at some juncture have to make a compromise between performance and “cool/wow” factors. Each will impact your ability to market your solution, and you must then determine which will have the greatest impact.

This is one of the PAIN factors that I use to measure quality in designs – Plan All Incremental Needs and have discused elsewhere and in blogs.

Personally, I will often make decisions on design based on performance, but your marketing strategy might differ.

靖瑶 2024-08-01 05:03:44

所以您知道,只需将会话移至 SQL Server 数据库,就可以非常简单地使会话与多个 Web 服务器一起使用。

此处提供了快速操作方法

至于您最初的问题,我会研究负载测试。 希望还有其他发帖者对此有更多了解。 我会关注页面浏览量,而不是用户。

So you know, session can be made to work with multiple web servers very simply by moving it out to a sql server database.

A quick how to is available here

As for your original question, I would look into load testing. Hopefully there will be other posters who know more about that. I would focus on page views, as opposed to users.

吐个泡泡 2024-08-01 05:03:44

测量应用程序中典型操作所需的资源(CPU、内存、磁盘、带宽)。 将可用资源除以代表性用户“会话”所需的资源,您就会得到一个粗略的数字。

在获得一组良好的真实数据之前,您必须猜测典型的使用习惯和资源需求。 这就是您在第一次估算容量时所能做的全部事情。

Measure the resources (CPU, memory, disk, bandwidth) needed for typical actions within your application. Divide available resources by resources needed for a representative user "session" and you have a rough number.

Until you have a good set of real data, you'll have to make guesses about typical usage habits and the resource requirements. That's about all you can do for a 1st pass at estimating capacity.

蓝眸 2024-08-01 05:03:44

一个好的负载均衡器可以确保用户返回到同一台服务器。

A good load balancer can ensure that a user will return to the same server.

亚希 2024-08-01 05:03:43

您可以使用在第二个机器上运行的会话状态服务器或 SQL Server 支持的会话来解决单个机器问题。

至于手头的问题,除了获得生产硬件、设置应用程序并运行负载测试,直到找出她的故障点之外,没有真正的方法可以确定。 这不一定会给您真实的数字,因为您必须假设用户正在做什么,并且几乎不可能在测试环境中模拟网络云的影响。

You can use a session state server running on a second box or sql server backed sessions to get around the single box issue.

As for the question at hand, there is no real way to determine that besides getting your hands on production hardware, setting up the app and running load tests until you can figure out where she breaks. This won't necessarily give you the real number as you have to make assumptions about what the users are doing and it is pretty much impossible to simulate the effects of the network cloud in test environments.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文