elunez / eladmin

eladmin jpa 版本:项目基于 Spring Boot 2.6.4、 Jpa、 Spring Security、Redis、Vue的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由
https://eladmin.vip/demo
Apache License 2.0
21.25k stars 7.35k forks source link

修改HashMap初始化容量,减少不必要的扩容,提高性能 #760

Closed kdjj2006 closed 2 years ago

kdjj2006 commented 2 years ago

自定义缓存key生成策略时,目前HashMap容量设置为4,按照JDK, 临界点在 4 * 0.75 =3时会触发扩容,也就是map中entry超过3时会自动扩容。 而方法中类地址,方法名称,包名称已经有3个了,只要“参数列表”不为空,必然会进行扩容,这样性能会受到影响,可以将初始化容量设为8或16,减少不必要的因为“参数列表”不为空而触发的扩容,提高性能。