在公司创业初期性能问题最是让人头疼的,因为经验的不足,生产上线之后会出现各方面的问题,作为一家致力于数字化学习相关产品及对辅助工具开发、应用和推广的公司,成都依能利用 OneAPM 解决了困扰他们的诸多性能问题。以下为依能公司 CTO 的分享内容。

使用背景

1、 我们的系统是基于 Java 开发的 Web 系统,系统架构采用基于 SOA 的分布式系统架构,前端采用AngularJS和SpringMVC,后端服务采用 Dubbo 进行服务的分布式治理让系统进行灵活扩展。

2、系统开发接近尾声,系统性能被提上议程,测试人员对复杂架构不熟悉,开发人员没有全局观念,很难进行问题定位。

3、为了解决这些问题,性能测试人员采用了 loadrunner,jprofiler 和 SQL 慢查询等手段进行定位,虽然可以定位,还是比较麻烦。一个偶然的机会,朋友推荐我看看 OneAPM,我发现了它的强大,我想要的功能 OneAPM 的工程师们都考虑到了。

实例优化

我们主要根据平均响应时间来进行Java性能优化,通过 OneAPM 定位到性能瓶颈所在的方法,派专人对这部分代码进行优化。以往我们开发人员费时费力进行问题排查,现在才发现当时连问题都没有找准。

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第1张

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第2张

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第3张

慢事务追踪很有用,前端和后端服务分离,还可以定位到后端服务的方法名和耗时占比,给我们优化提供有力帮助。

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第4张

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第5张

JVM 的活动线程也很赞,能够统计有多少用户正在使用我们的产品。

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第6张

Web事务报表,让我们可以对最近一段时间的响应时间、吞吐量和错误率做对比分析。

成都依能科技股份有限公司:性能优化从未如此简单 客户案例 第7张

总结

OneAPM 让我对性能优化有了新的理解和感受,原来定位问题可以如此简单,性能优化可以如此便捷,相信还有更多的功能会在后续的使用中发挥作用,让我们对建立完善的生产系统也有了充分的信心。

------以上是分享的全部内容------

OneAPM for Java 能够深入到所有 Java 应用内部完成应用性能管理和监控,包括代码级别性能问题的可见性、性能瓶颈的快速识别与追溯、真实用户体验监控服务器监控和端到端的应用性能管理。想阅读更多技术文章,请访问 OneAPM 官方博客