java应用性能优化思路(一)

1.动静分离,将静态资源交给nginx管理,动态请求交给我们开发的应用程序处理;

2.为数据库表常用查询字段添加索引;

3.如果查询的sql语句还打印在控制台,需将日志级别提高到info或error;

复制代码
logging:
  level:
    com.atguigu.gulimall: error

4.使用jvisualvm查看内存、gc回收,看是否有优化的空间,如调大分配给jvm的内存

复制代码
-Xmx1024m -Xms1024m -Xmn512m

其中:

  1. -Xms 为jvm启动时分配的内存,比如-Xms200m,表示分配200M
  2. -Xmx 为jvm运行过程中分配的最大内存,比如-Xms500m,表示jvm进程最多只能够占用500M内存
  3. -Xmn512m 设置年轻代大小512m

5.查看业务逻辑代码,如果代码中存在循环中查询数据库的,则需进行优化,查询数据库涉及到io操作,而循环与数据库进行交互,则产生大量io,会降低性能。此时需结合实际情况,看查库的操作能否只调用一次,然后对查询出来的数据使用stream流的filter进行过滤。

相关推荐
r***93484 分钟前
PostgreSQL版本选择
数据库·postgresql
半路_出家ren6 分钟前
Tomcat下配置woniusales
java·数据库·mysql·网络安全·adb·tomcat·firewalld
g***727010 分钟前
mysql之联合索引
数据库·mysql
红树林0715 分钟前
渗透测试之sql注入--盲注
数据库·sql·安全·web安全
智能化咨询20 分钟前
(66页PPT)高校智慧校园解决方案(附下载方式)
大数据·数据库·人工智能
hhwyqwqhhwy22 分钟前
linux 设备树内容和plateform_device
java·linux·数据库
浪漫血液&25 分钟前
索引为什么用B+树而不是B树
数据结构·数据库·b树·b+树
2的n次方_28 分钟前
openGauss压力测试:性能、稳定性与AI能力的全面探索
数据库·人工智能·压力测试
热心市民小刘050533 分钟前
数据库基础知识点总结
数据库·oracle
Chloeis Syntax41 分钟前
MySQL初阶学习日记(3)--- 增查改删(CRUD)
数据库·学习·mysql