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进行过滤。

相关推荐
醉风塘3 分钟前
MongoDB高级查询全攻略:使用MongoTemplate实现分组、排序、分页与连表查询
数据库·mongodb
TG:@yunlaoda360 云老大14 分钟前
如何确保华为云国际站代理商的服务可用性?
数据库·人工智能·华为云
又是忙碌的一天31 分钟前
Myvatis 动态查询及关联查询
java·数据库·mybatis
java1234_小锋39 分钟前
Redis是单线程还是多线程?
数据库·redis·缓存
若尘啊若辰41 分钟前
安全通用要求之十安全运维管理
网络·数据库·网络安全·等保·等级保护·安全通用要求
云和恩墨1 小时前
数智聚力,开源破局!openGauss Summit 2025见证数据库产业革新,云和恩墨深耕生态载誉而归
数据库·开源
酸菜牛肉汤面1 小时前
12、数据库为什么使用B+树而不是B树
数据结构·数据库·b树
l1t1 小时前
PostgreSQL Distinct On 关键字的用法
数据库·sql·postgresql
TDengine (老段)1 小时前
快速掌握时序数据库 + TDengine 学习指南
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
xixixi777771 小时前
进一步了解一下现代数字经济的核心动脉——DCI(数据中心互联 )
网络·数据库·安全·光通信·数据·通信·dci