1.cpu层
分析哪些方法耗时最多,然后分析这些消耗是否合理,比如:缓存穿透等,其实是可以避免的。
然后能否在登录时,将一些业务异步处理,而不是上线时在一个方法内全部查询好。
2.内存层:
分析出有没有内存持续增长而没有释放出现内存泄露的情况。
比如:一个全局的静态属性,一直往里面加东西,由于它是一个GC Root,这样子这块内存永远不会释放,导致内存泄露。
这时就需要去观察内存的变化。
正常来说,是波浪型的:先分配,持续增高,然后触发GC进行回收,内存下来,这样子内存整体是平稳状态。