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

相关推荐
fjkxyl4 小时前
Redis 跳表技术博客:为什么不选用红黑树和 B+ 树
数据库·redis·缓存
张人玉4 小时前
整合 Sugar ORM 连接 SQLite 数据库到 WPF 折线图项目
数据库·sqlite·c#·wpf
、BeYourself4 小时前
PGvector :在 Spring AI 中实现向量数据库存储与相似性搜索
数据库·人工智能·spring·springai
a187927218315 小时前
MySQL 硬件优化和操作系统优化
数据库·mysql·优化·raid·numa·sysbench·系统参数
只想早点退休的90后5 小时前
sql面试题分享
数据库·sql
枫叶丹45 小时前
【Qt开发】Qt系统(三)->事件过滤器
java·c语言·开发语言·数据库·c++·qt
不会c嘎嘎5 小时前
mysql -- 使用CAPI访问mysql服务器
服务器·数据库·mysql
Zzzzmo_5 小时前
【MySQL】数据类型 及 表的操作
数据库·mysql
L1624765 小时前
linux系统中YUM安装MySQL数据库详细教程
linux·数据库·mysql
残风也想永存5 小时前
【MySQL】事务管理
数据库·mysql