专栏名称: java一日一条
主要是讲解编程语言java,并且每天都推送一条关于java编程语言的信息
目录
相关文章推荐
芋道源码  ·  如何加快 SQL 查询速度的同时保持 ... ·  10 小时前  
芋道源码  ·  SQL性能优化神器! ·  昨天  
芋道源码  ·  Spring Boot 3.2 ... ·  昨天  
芋道源码  ·  解放大脑:ChatGPT + ... ·  昨天  
Java编程精选  ·  成年人欲望程度排行榜TOP 10 ·  2 天前  
51好读  ›  专栏  ›  java一日一条

编写高性能 Java 代码的最佳实践

java一日一条  · 公众号  · Java  · 2018-07-16 09:12

正文

请到「今天看啥」查看全文


在运行模拟脚本之后,Gatling会生成一份非常有用的、可用于分析的HTML报告。

定义场景

在启动记录器之前,我们需要定义一个场景,表示用户在浏览Web应用时发生的事情。

在我们的这个例子中,具体的场景将是“启动200个用户,每个用户发出一万个请求。”

配置记录器

根据“Gatling的第一步”所述,用下面的代码创建一个名为EmployeeSimulation的scala文件:

对应用程序的API进行负载测试有助于发现及其细微的并且难以发现的错误,如数据库连接耗尽、高负载情况下的请求超时、因为内存泄漏而导致堆的高使用率等等。

监控应用程序

要使用Retrace进行Java应用程序的开发,首先需要在Stackify上申请免费试用账号。然后,将我们自己的Spring Boot应用程序配置为Linux服务。我们还需要在托管应用程序的服务器上安装Retrace代理,按照这篇文章所述的操作即可。

Retrace代理和要监控的Java应用程序启动后,我们就可以到Retrace仪表板上单击AddApp按钮添加应用了。添加应用完成之后,Retrace将开始监控应用程序了。

找到最慢的那个点

Retrace会自动监控应用程序,并跟踪数十种常见框架及其依赖关系的使用情况,包括SQL、MongoDB、Redis、Elasticsearch等等。Retrace能帮助我们快速确定应用程序为什么会出现如下性能问题:

  • 某个SQL语句是否会拖慢系统的速度?

  • Redis突然变慢了吗?

  • 特定的HTTP Web服务宕了,还是变慢了?

例如,下面的图形展示了在一段给定的时间内速度最慢的组件。

代码级别的优化

负载测试和应用程序监控对于确定应用程序的一些关键性能瓶颈非常有用。但同时,我们需要遵循良好的编码习惯,以避免在对应用程序进行监控的时候出现过多的性能问题。







请到「今天看啥」查看全文