![ed24b7aaf1bc9468451ff2a7d20a2382.png](https://i-blog.csdnimg.cn/blog_migrate/82d202b79aab60f472613fb7e3449e9e.jpeg)
前言:
一个很重要的知识环节。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于系统的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。
性能优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可以优化的细节了,一个一个细小的优化点累积起来,对于运行的效率绝对是有提升的。
Java性能问题一直困扰着广大程序员,由于平台复杂性,要定位问题,找出其根源确实很难。随着10多年Java平台的改进以及新出现的多核多处理器,Java软件的性能和扩展性已经今非昔比了。现代JVM持续演进,内建了更为成熟的优化技术、运行时技术和垃圾收集器。与此同时,底层的硬件平台和操作系统也在演化。本文会结合实际中接触到的一些面试题,重点了解一下Java架构性能优化中的一些相关知识。
![729703d189e439ab2eb79823390457b1.png](https://i-blog.csdnimg.cn/blog_migrate/e3f38a090191acb0be400def48f45a24.jpeg)
1.java程序性能优化相关问题
- 如何创建优雅的对象
- c注意对象的通用方法
- 类的设计陷阱
- 泛型需要注意的问题
- 程序设计的通用规则
2.tomcat性能调优
- 怎么给tomcat调优
- 如何加大comcat连接数
- 怎么加大tomcat的内存
- tomcat中如何禁止列目录下的文件
- Tomcat有几种部署方式
- tomcat的优化经验
3.jvm性能优化专题:
- Java类加载过程
- java内存分配
- 描述一下jvm加载class文件的原理机制
- GC是什么?为什么要有GC?
- 简述java垃圾回收机制
- 如何判断一个对象是否存活?(或者GC对象的判定方法)
- 垃圾回收的优点和原理。并考虑2种回收机制。
- 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?
- 有什么办法主动通知虚拟机进行垃圾回收?
- java中会存在内存泄漏吗,请简单描述。
- 深拷贝和浅拷贝
- syatem,gc()和runtime,gc()会做做什么事情?
- finalize方法什么时候被调用?析构函数(finalizatinon)的目的是什么?
- 如何对象的引用被置为null,垃圾收集器是否会立即释放对象占用的内存?
- 什么是分布式垃圾回收(DGC)?它是如何工作的?
- 串行(serial)收集器和吞吐量(throughout)收集器的区别是什么?
- 在Java中,对象什么时候可以被垃圾回收?
- 简述Java内存分配与回收策率以及minor GC和majorGC。
- jvm的永久代中会发生垃圾回收吗?
- Java中垃圾收集的方法有哪些?
- 什么是类加载器,类加载器有哪些?
4.mysql性能优化整理:
- 谈谈表结构对性能的影响
- 浅谈索引优化
- JOIN的原理是什么
- 说说Sql优化的几点原则
- 谈谈MySQL 中锁
- 讲解对事务的认识
- 如何理解BTree机制?
- 如何深入执行计划分析?
- 谈谈对慢查询分析与SQL优化
- 性能优化应该如何学习
附mysql学习思维导图。
![f40945a2c38eb780e05dada2419c80f2.png](https://i-blog.csdnimg.cn/blog_migrate/740fa3b7541a17565b86209c040514d1.jpeg)
需要上述思维导图高清大图以及更多相关学习资料请私信笔者“性能调优”领取
另外喜欢这篇文章的可以给笔者点个赞,关注一下,每天都会分享Java相关文章!还有不定时的福利赠送,包括整理的学习资料,面试题,源码等~~