Java 是不是没有好的热部署方案?

2019-07-24 09:46:43 +08:00
 StarkWhite

像 Node,PHP 推代码到服务器就行了,Java 每次打 jar/war 包、停止旧服务、启动新服务,挺麻烦的,从启动到能访问还得等几分钟。

17119 次点击
所在节点    Java
118 条回复
NizumaEiji
2019-07-24 09:49:41 +08:00
OSGI?
laravel
2019-07-24 09:50:40 +08:00
k8s
gwybiaim
2019-07-24 09:55:34 +08:00
有 hotswap 啊
相关的工具也很多,比如阿里巴巴的 arthas
https://alibaba.github.io/arthas/index.html
http://hengyunabc.github.io/arthas-online-hotswap/
airfling
2019-07-24 09:55:52 +08:00
这个是是 jvm 的性质导致的,没有好的解决方案,以前有 osgi,但是那个其实也是要很久
zzf2019
2019-07-24 09:56:21 +08:00
不都是 灰度发布吗?从访问上来说非常平滑呀,这不是 java 的问题吧,node、php 都是只有一个服务吗
nikandaoleshenme
2019-07-24 09:59:36 +08:00
不知道有种工具叫脚本么,
再说了,要不是部署时间间隙这么长,哪有时间来 v 站逛 [搜狗表情]
efaun
2019-07-24 10:00:55 +08:00
分布式是用来干嘛的
chendy
2019-07-24 10:02:01 +08:00
反向代理 + 脚本
k8s 之类自带滚动升级的东西
lastpass
2019-07-24 10:02:48 +08:00
完全可以很简单的热部署呀,我现在就在使用。
在 windows 下编辑和调试代码,自动热部署到另一台 linux 服务器。
StarkWhite
2019-07-24 10:03:43 +08:00
@zzf2019 就一台服务器,自己做个人小项目,怎么灰度发布 😂
ala2008
2019-07-24 10:04:31 +08:00
难道只有一个服务器?
StarkWhite
2019-07-24 10:04:44 +08:00
@cshijiel 感谢分享。但是在 arthas 官网的说明里没有热部署啊。hotswap 我再看看
liangkang1436
2019-07-24 10:06:31 +08:00
推荐 Jrebel
https://jrebel.com/
gwybiaim
2019-07-24 10:06:57 +08:00
@StarkWhite 看第二个链接,三个命令就可以。最关键的是 redefine 命令,参考 https://alibaba.github.io/arthas/redefine.html
guokeke
2019-07-24 10:07:55 +08:00
单机可以用 nginx 反代多个 server 那样搞
Xbluer
2019-07-24 10:08:14 +08:00
@StarkWhite 问题就变成了,个人小项目直接重启一下又不会太久,上啥热部署啊
StarkWhite
2019-07-24 10:08:41 +08:00
@laravel k8s 那一套太重了,还不如手动部署。。。
Caballarii
2019-07-24 10:09:48 +08:00
java 从来不止起一个服务,停一个切路由起完了再切回来就好了
StarkWhite
2019-07-24 10:10:59 +08:00
@lastpass 你怎么实现的呢?
jowan
2019-07-24 10:11:44 +08:00
PHP 也得看你是什么业务
像我们的光推代码是不行的 还得重启队列,Socket 等服务

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/585647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX