即使是小小中间件,参数也有千千万,着重查看应用中间件的哪些重要指标?

中间件有各种产品,我们怎么来确认我们需要重点关注中间件的哪些重要指标呢

参与13

1同行回答

yangjianxvyangjianxv部门总经理成方金融科技有限公司
如果从大的系统性能角度,需要看响应时间、吞吐量、资源利用率、交易成功率这几个重要的指标。这几个指标都是可以从中间件中观察到的。只不过这些指标我们往往不从中间件中监控。例如,响应时间、吞吐量往往从用户的端到端计算,或者从日志里面计算,资源利用率从操作系统层面监...显示全部

如果从大的系统性能角度,需要看响应时间、吞吐量、资源利用率、交易成功率这几个重要的指标。这几个指标都是可以从中间件中观察到的。只不过这些指标我们往往不从中间件中监控。例如,响应时间、吞吐量往往从用户的端到端计算,或者从日志里面计算,资源利用率从操作系统层面监控。这里介绍的指标是中间件特有的监控指标。

1)Web应用程序相关
ResponseTime:接收到请求和应答之间的平均时间,这段时间包括了收到请求到分配执行的时间,包括了应用等待数据库连接池的时间、包括中间件调用数据库执行时间等等。如果ResponseTime较长,而从数据库上查看SQL的执行时间很短,那么8成就是中间件里面的实际长了
ConcurrentRequests:并发处理的请求数
RequestCount:servlet处理的请求总数。结合这个指标和监控的总时间,可以计算请求的吞吐量。
ErrorCount:错误的数量。需要结合RequestCount计算错误的比例。

2)JDBC连接池
PoolSize:连接池的大小
PercentUsed:正在使用的池的平均百分率
WaitTime:在允许连接之前的平均等待时间(单位毫秒)。如果这个值不为0,并且等待时间较长,需结合PercentUsed和WaitingThreadCount来扩大PoolSize。
WaitingThreadCount:等待连接的平均并发线程数

3)线程池
线程池有许多类型,例如web容器线程池、ORB线程池、EJB异步线程池
池中配置的线程数。
ActiveCount:并发活动的线程数
PercentUsed:正在使用的池的平均百分率,如果太大(超过80%,接近100%)那就说明线程不足了。

4)JVM虚拟机
HeapSize:JVM的堆大小
UsedMemory:JVM运行时中的使用的内存总量(KB)

5)会话数
ActiveCount:请求当前访问的会话总数。在测试环境中,如果在稳定的压力面前,请求访问的会话数持久增长,那么,很可能程序中没有关闭会话的设置。最终会导致会话数不足,无法接受新的请求。

6)垃圾回收GC
垃圾回收期间,1)占用CPU资源,2)业务的响应时间略有影响。
因此垃圾回收的调用频率比较重要。
GCIntervalTime:两次垃圾回收调用之间的平均时间(毫秒)
GCTime:垃圾回收调用的平均持续时间(毫秒)

7)另外还有高速缓存、数据源语句缓存大小等,详细可参考http://www.talkwithtrend.com/Article/216337

收起
银行 · 2017-11-09
浏览2313

提问者

jwhdhr
软件开发工程师农商银行
擅长领域: 数据库中间件消息中间件

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-11-09
  • 关注会员:2 人
  • 问题浏览:4576
  • 最近回答:2017-11-09
  • X社区推广