7

你们的项目启动时间是几秒?

 2 years ago
source link: https://www.v2ex.com/t/785066
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  程序员

你们的项目启动时间是几秒?

  szq8014 · 9 小时 25 分钟前 · 3221 次点击

现在手头负责的单体项目是 15-20 秒左右, 有点影响自己的写代码节奏。。加一些启动参数能达到 10-12 秒,感觉变化不大,如果能在 5 秒内启动该多好。
之前待过的公司也都是单体 Java 项目,启动速度慢的能达到 1 分钟, 大家现在手头的项目启动速度都是什么级别的呢? 有没有影响到你们的思维节奏?

55 条回复    2021-06-22 22:45:56 +08:00

yitingbai

yitingbai   9 小时 22 分钟前

用到的东西多了启动肯定慢啊, 如果有条件可以把项目分成几个模块, 分别开发分别调试

szq8014

szq8014   9 小时 12 分钟前

@yitingbai 现在也在纠结这个事,不知道服务化拆分后收益大不大

XiLingHost

XiLingHost   9 小时 12 分钟前

拆成不同的组件,写好 CI,提交的时候自动 rolling update,这样就方便了

pmispig

pmispig   9 小时 10 分钟前

快的 60 秒,慢的 180 秒。。。你这 15 秒超神

peyppicp

peyppicp   9 小时 8 分钟前

golang 项目,2s

cslive

cslive   9 小时 7 分钟前

配置垃圾,2 分钟起不起来

szq8014

szq8014   9 小时 5 分钟前

@pmispig 那开发时间岂不是有很多浪费在了启动上?

kwanzaa

kwanzaa   9 小时 5 分钟前

故意放慢速度来打印 log 提供仪式感,不然裸载 2s 。

zen1

zen1   8 小时 54 分钟前

本地最少 2min+

wwwz

wwwz   8 小时 54 分钟前

慢啊,java 用 jrebel 热部署,有的时候还是需要重启

Tink

Tink   8 小时 52 分钟前 via Android

纠结这个感觉意义不大啊

zzzmh

zzzmh   8 小时 49 分钟前   ❤️ 1

影响思路具体如何影响,是每次写完调试,重启项目,慢?
感觉我不会那么频繁遇到需要重启的情况,写完一套逻辑,重启一次,一天也就十来次。
另外解决思路很简单啊,自己买个 amd 5800h 芯的本子,刷 linux 系统,不管重启还是编译都快到赏心悦目

chenqh

chenqh   8 小时 47 分钟前

@zzzmh 10 来此重启,我 2 分钟就用完了

pkoukk

pkoukk   8 小时 43 分钟前

2s 左右?
现在写 tdd,新代码 cover 的差不多了才会启项目搞集成测试,启不了几次

wr516516

wr516516   8 小时 38 分钟前

好奇你加的什么启动参数

szq8014

szq8014   8 小时 37 分钟前

@wr516516 网上能搜到,是 SpringBoot 启动优化的

具体参数是 `-XX:TieredStopAtLevel=1 -Xmx1024M -Xms1024m -noverify `

reeco

reeco   8 小时 36 分钟前 via iPhone

60w 行代码,编译 5 分钟,启动 15 分钟

Mogamigawa

Mogamigawa   8 小时 34 分钟前 via iPhone

wxw752

wxw752   8 小时 26 分钟前   ❤️ 6

带薪启动,不要在意速度。正好可以去喝一杯咖啡

janda

janda   8 小时 10 分钟前

junit 单元测试

szq8014

szq8014   8 小时 8 分钟前

@reeco 厉害了..

NUT

NUT   8 小时 3 分钟前

这个问题核心是在于,如何快速 debug 吧。

想好逻辑,用 TDD 减少 debug 次数,debug 很费时间,我认为如何降低 debug 次数,比考虑项目启动优化,要有意义。 俗称 脑子跑代码。。。

各种设计原则用一用,什么单一原则,开闭等等。

如果对项目启动有要求,差那几秒没啥意义,现在都是容器化时代了,蓝绿红黑,随便搞搞就解决了。

dream10201

dream10201   7 小时 58 分钟前

在主程序的第一句:print("启动成功")

byte10

byte10   7 小时 57 分钟前

@reeco 牛到不行。我们那些狮山项目 I7-10 代表压 U 启动 45S,m1 启动 30 秒,M1 是真的无脑强。
@peyppicp (⊙o⊙)… go 怎么那么厉害。java 是真的烂,go,nodejs,python,这些玩意是真的舒服。随时写,随时跑

hsuvee

hsuvee   7 小时 48 分钟前

Java 曾有一个 20 分钟

yuancoder

yuancoder   7 小时 47 分钟前

php 一秒内

szq8014

szq8014   7 小时 35 分钟前

@ericgui 哈哈哈哈。我看你发了一个屎山的,看来经历过

yeqizhang

yeqizhang   7 小时 32 分钟前 via Android

启动几分钟,编译十分钟……

chenqh

chenqh   7 小时 30 分钟前

@byte10 golang 是启动快,但是写的时候想死

xloger

xloger   7 小时 26 分钟前

Android 项目,冷启动要 2 分多钟,打一个 release 包要 6 分钟。时常吐槽说等编译的时间已经超过我 debug 的时间了。耗时分析有一半时间是在 kotlin 编译上,为此还看了下别人的优化方案: https://juejin.cn/post/6854573211548385294
看完放弃自己优化的念头了。我需要公司配个更好的 CPU ......

Leonard

Leonard   7 小时 14 分钟前

公司抠,电脑配置不行,慢就慢呗,反正我按点下班,慢浪费的也不是我的时间

otakustay

otakustay   7 小时 1 分钟前

冷启动 3 分钟左右,有缓存的热启动 5 秒左右,热更新几乎秒完成

HDMItoDP

HDMItoDP   6 小时 54 分钟前

300 多秒

Junzhou

Junzhou   6 小时 44 分钟前

i7-7700 14s,M1 8s

joyhub2140

joyhub2140   6 小时 31 分钟前

这个没有固定指标的吧?

同一个项目,有人 10 核 5G 主频,64G 内存随便开。
有人双核赛扬 8g 内存卡半天。。。

sprite82

sprite82   6 小时 20 分钟前

i5 7500 16G 内存 启动 15s 左右,但是我一天启动次数不超过 10 次

polo3584

polo3584   6 小时 13 分钟前

最长的时候 500 多秒,后面通过一些注释终于降到了 150 秒内。

Greatshu

Greatshu   6 小时 12 分钟前

10 分钟,刚好够去一次厕所

xingjue

xingjue   6 小时 10 分钟前

go 的编译速度快

bghtyu

bghtyu   5 小时 58 分钟前

go 启动很快,但是编译也挺慢的

zhanggg

zhanggg   5 小时 58 分钟前

单体还好,最多几分钟,全新起一套完整服务要超 24 小时

hapiman

hapiman   5 小时 48 分钟前

用 Go,5 秒内启动

crclz

crclz   5 小时 18 分钟前

C#( Asp.Net )启动速度非常快,1s

gtx990

gtx990   5 小时 14 分钟前 via Android

Java guice
启动倒是很快,几秒就行
编译,docker 打包要几分钟

inhzus

inhzus   5 小时 11 分钟前 via iPhone

项目本地启动不起来,环境上部署一下五分钟过去了。调试绝大多数靠单测,定位问题用 arthas

ysicing

ysicing   5 小时 7 分钟前

Go 启动 2s,编译 10s 左右

heheda11

heheda11   3 小时 54 分钟前

Python fastApi 0.1s ~

lixingjun

lixingjun   3 小时 29 分钟前

nodejs 1.5 秒,不过这样比较似乎意义不大

ConfusedBiscuit

ConfusedBiscuit   3 小时 1 分钟前

巨无霸 Java 项目,IDEA 导入一次 20 分钟+,启动一次 5 分钟+,打包 1.5GB

3dwelcome

3dwelcome   3 小时 0 分钟前

@xloger "打一个 release 包要 6 分钟"

apk 打包有一些时间是用在压缩 asset 上,apk 的本质是 zip,每个文件都是单独压缩的,如果文件没有变,可以直接复用上一次压缩结果(前提是要保留上一次的压缩包作为对比对象)

这样速度就很快了。

akira

akira   1 小时 21 分钟前

java 的项目啊。。分钟级别都是能接受的

HunterPan

HunterPan   1 小时 13 分钟前 via iPhone

1 分钟内可接受,自己的项目一般 30s 内

wdlth

wdlth   1 小时 4 分钟前

20 秒左右吧

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK