开发者社区> 问答> 正文

在Web服务的部署过程中,应用程序预热会遇到哪些问题?

在Web服务的部署过程中,应用程序预热会遇到哪些问题?

展开
收起
1358896759097293 2021-05-04 15:30:03 892 0
1 条回答
写回答
取消 提交回答
  • 45271990@qq.com

    Java有非常丰富的应用场景,一个典型的场景就是我们会用Java写一些 Web服务。在Web服务的部署过程中,会发现预热给我们带来非常大的困扰。当我们把一个Web服务部署到线上后,应用启动完成,此时就会有大量的用户请求进入。 这个时候由于有大量的热点方法需要被编译,JVM的编译线程会非常忙碌,因为它需要占用大量的CPU将这些方法编译成为Native Code。同时又因为用户的线程需要执行解决用户的请求,因此它也会占用大量的CPU,并且会抢占编译线程所使用的CPU,这样就会导致编译线程无法尽快地把这些热点方法编译到Native Code,使得应用程序长时间运行在解释执行的状态,降低服务的质量。同时,服务的RT会增加,服务所使用的CPU也会非常的高,这就是在真实场景中所遇到应用程序预热的问题,接下来我们来看一下阿里巴巴Dragonwell 8中的JWarmup特性是如何解决这个问题。

    2021-05-05 22:44:35
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Web应用系统性能优化 立即下载
高性能Web架构之缓存体系 立即下载
PWA:移动Web的现在与未来 立即下载