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

相关推荐
zhangyifang_00912 小时前
ClickHouse查询报错:Code: 62. DB::Exception: Max query size exceeded:
数据库·clickhouse
2301_7887560612 小时前
Python在2024年的主要趋势与发展方向
jvm·数据库·python
uoKent13 小时前
MySQL示例数据库
数据库·mysql
麦聪聊数据13 小时前
利用SQL2API模式重构微服务中的数据查询层
数据库·sql·低代码·微服务·架构
占疏13 小时前
数据库-BRIN 索引
数据库·mysql
u01092727113 小时前
Python虚拟环境(venv)完全指南:隔离项目依赖
jvm·数据库·python
m0_6860416113 小时前
Python类型提示(Type Hints)详解
jvm·数据库·python
晚风_END13 小时前
postgresql数据库|pgbouncer连接池压测和直连postgresql数据库压测对比
数据库·postgresql·oracle·性能优化·宽度优先
三水不滴13 小时前
Redis 持久化机制
数据库·经验分享·redis·笔记·缓存·性能优化
lusasky13 小时前
Claude Code v2.1.0+ 版本集成LSP
大数据·数据库·人工智能