当前位置:Java -> Java 应用程序延迟降低与陷阱
在我的应用开发生涯中,我面对的一个艰难而模糊的问题是改善分布式数据检索应用的延迟。
这是一个容器化的Java应用程序,用于在最大的零售网站之一上展示产品广告。其目的是降低延迟,以便为额外的处理提供空间,尤其是运行和尝试高级机器学习模型,以为客户展示更好的广告。
我使用的技术之一是内存分析,以了解JVM内存使用情况周围的活动。尽管听起来微不足道,但我发现了一些主要障碍,花了一些时间才弄清楚。最终,我能够克服这些障碍,成功将应用程序的p99延迟从400毫秒减少到240毫秒。
延迟降低对我来说是一个新的挑战,所以我需要最佳的工具来解决它。虽然有很多工具可用,包括开源和付费工具,但我发现eclipse内存分析工具MAT是所有免费工具中最有用的。有很多关于如何安装和使用MAT的文章,所以我就不详细介绍了。
在本文中,我将介绍与大型生产应用程序的内存分析相关的挑战以及如何克服这些挑战。
对于任何大型生产应用程序来说,分析内存都是至关重要的。
在应用程序中缓存数据可能是有用的,但应该密切监视以检测任何随时间的下降。
堆转储分析是一个强大的工具。如果使用合适的机器和工具进行,它可能会变得痛苦。
在获取堆转储时,要密切关注生产应用程序的健康检查例程,以成功地获取相同的堆
我没有深入细节以保持文章简洁。如果有人想要更多信息,请随时联系我。
推荐阅读: 5.prototype.toString.call检测类型
本文链接: Java 应用程序延迟降低与陷阱