java - 有没有办法获得SQS队列的平均服务时间?

标签 java scala message-queue amazon-sqs amazon-cloudwatch

我们在包含 SQS 队列的数据管道中的交付时间很慢。所以我想知道消息在 SQS 位上花费了多少时间。

CloudWatch 只提供了不太有用的仪表:

ApproximateNumberOfMessagesNotVisible
ApproximateNumberOfMessagesVisible
NumberOfEmptyReceives
NumberOfMessagesDeleted
NumberOfMessagesReceived
NumberOfMessagesSent
SentMessageSize

目前没有拥塞,队列99.99%的时间都是空的,但并不能保证每条消息在队列中花费的时间很短。

是否有任何高级指标选项或任何外部工具或 Scala/Java 库来测量每个消息 ID 的 Tconsume-T Produce

最佳答案

没有任何高级指标可以为您提供此信息。

在处理消息时,您必须添加逻辑来记录这些指标。 sqs 消息上还有其他属性,可以帮助您计算消息在删除之前在队列上花费的时间。

消息上的 CreatedTimestamp、LastModifiedTimestamp 属性将允许您记录指标,然后您必须聚合这些指标。

关于java - 有没有办法获得SQS队列的平均服务时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38616556/

相关文章:

java - 在 Java 中按引号之间的值拆分字符串

java - 如何在 Java 中漂亮地打印 3D 数组

scala - Option [T]来自Scala的什么地方?

list - Scala 根据条件在 2 个列表之间合并

docker - 使用 RabbitMQ 进行不同 Docker 容器之间的通信

java - 自定义缺少@requestparam 时的错误响应消息

java - 在 J2ME 中编码 GIF

generics - 关于 Scala 泛型 : cannot find class manifest for element type T

memcached - 基于Memcache的消息队列?

java - 了解 zeromq java 绑定(bind)