文章详情页
为何java不易热部署
浏览:295日期:2023-11-03 09:31:45
问题描述
我的疑问是我修改java代码,然后页面请求执行,服务器自动编译成字节码并送入jvm中运行。为何要重启jvm才能执行修改后的代码呢。
问题解答
回答1:java 有很多热部署方案啊。https://www.google.com/search...
但是热部署会影响性能,而且在生产环境中,java 代码部署的频率是很低的。
所以,一般都是在开发环境中开启热部署。
回答2:虚拟机频繁编译,会占用Jvm运行内存,会影响到GC,而且网站性能会降低
回答3:热部署的本质是替换class,也就是说需要把旧的class从内存里踢掉再重新加载新的class,这里就涉及了类的卸载,而卸载一个类的条件之一是它的ClassLoader可以被垃圾回收给收走。反过来如果ClassLoader不能被回收掉的话,那就只能重启java了。
标签:
java
相关文章:
1. javascript - QQ第三方登录的问题2. node.js - express框架,设置浏览器从缓存中读取静态文件,只有js从缓存中读取了,css还有一些图片为何没有从缓存中读取?3. Angular.js 无法设置Authorization头,该怎么解决?4. node.js - nodejs+express+vue5. java - 如何点击按钮,重新运行(我是初学者)?6. javascript - 我的站点貌似被别人克隆了, google 搜索特定文章,除了域名不一样,其他的都一样,如何解决?7. css3 - 这个效果用 CSS 可以实现吗?border-image8. java - web端百度网盘的一个操作为什么要分两次请求服务器, 有什么好处吗9. java - Spring boot 读取 放在 jar 包外的,log4j 配置文件,系统有创建日志文件,不写入日志信息。10. javascript - 请指条明路,angular的$event,在select中却是undefined?
排行榜

网公网安备