首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >衡量竞争消费者系统容量的标准模式

衡量竞争消费者系统容量的标准模式
EN

Software Engineering用户
提问于 2017-09-11 17:46:16
回答 1查看 76关注 0票数 0

我们有许多基于竞争消费者模式的系统。我们目前监视排队的一项工作与处理完成之间的延迟,但是,随着吞吐量的增加,这个指标只会在系统已经超过其最大容量时(即传入请求的数量大于系统处理请求的能力)的平均水平上增加。在这一点上,为时已晚,处理时间将继续增加,直到工作量减少,或我们能够增加容量。

我想实施一个监测系统,告诉我们在这种情况发生之前,我们离能力过剩有多近。这种监控有什么标准模式吗?

例如,我目前的想法是,我可以测量处理请求的总时间占理论最大值的百分比,例如,如果在60秒的时间内,总共450秒用于处理最多10个线程的请求,这表明我们处于450 / 600 =理论最大容量的75%。这种做法是否明智?

EN

回答 1

Software Engineering用户

发布于 2017-09-11 18:11:01

听起来很直截了当,你测量的指标实际上是错误的,对你的问题没有用。

有几个指标你可以考虑衡量,有不同的优势和弱点。

  • “该收货了”。也就是说,消息在队列中停留多长时间,才被用户接受工作。这个指标在你超载前会上升,就像你的消费者的背压指数。当他们忙着做那些他们无法摆脱的新任务时,它就会向上发展。
  • “时间清空”。如果您经常这样做,您应该能够查看队列中给定的任务,并粗略猜测处理过程需要多长时间。对于你的可用任务,你可以计算出一个“清晰的时间”。当实际清晰的时间偏离预测的清晰时间时,你就开始遇到麻烦了。当你陷入困境时,明确的时间将是预测的两倍或三倍。清晰的时间基本上是您的系统运行干涸的任务所需的时间,假设所有的消息生成现在停止。
票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/357196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档