可能导致CPU占用率过高的场景与解决方案

本文阅读 2 分钟
首页 代码,Java 正文

场景1:无限while循环

解决方案:尽量减少无限循环、让循环执行得慢一点(sleep)

场景2:频繁GC

解决方案:降低GC频率

场景3:频繁创建新对象

解决方案:合理使用单例

场景4:序列化和反序列化 https://blog.51cto.com/jianshusoft/766400

解决方案:选择合理的API实现功能、选择好用的序列化/反序列化类库

场景5:正则表达式。原因是正则表达式使用了NFA自动机的引擎,这种引擎在进行字符串匹配的时候会发生回溯,可能导致CPU占用率过高。关于NFA的更多细节及解决方案可以参考下面的文章:

https://blog.csdn.net/u013278314/article/details/80916104

场景6:频繁的线程上下文切换

解决方案:降低切换的频率,可能需要结合业务进行改造,复杂度较高

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://wangjiawei.blog.csdn.net/article/details/119766667
-- 展开阅读全文 --
安全面试之XSS(跨站脚本攻击)
« 上一篇 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复