在apache中,有一个服务器状态页面,它告诉我服务器的当前状态。特别是,它告诉我当前正在处理的请求数量("当前"是指访问服务器状态页的时间)。有没有办法在妮蒂身上找到同样的东西?
它不是内置的,但在概念上很容易实现(或者很容易描述,无论如何;))
- 创建一个可共享的ChannelHandler:
- 实现ChannelUpstreamHandler 实现ChannelDownstreamHandler
- 添加一个AtomicInteger字段 flightrequests 向上递增,向下递减。
- 通过JMX暴露 flightrequests ,这样您就可以监视该值。
- 你也应该在SimpleChannelUpstreamHandler中递减 flightrequests exeptionCaught回调。你可能想要添加一个errors计数器,就像inFlightRequests计数器一样,它在捕获异常时递增。
- 添加[相同的]ChannelHandler实例到所有创建的管道中作为第一个处理程序。