首页
注册
登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请
登录
广告
V2EX
›
编程
Vertx + Kotlin coroutine = 真香
sagaxu
· 30 天前 via Android · 2023 次点击
项目积累了大量异步回调的 JVM 代码,层层回调的复杂业务逻辑维护起来有些心累,引入协程能明显改进可读性和易维护性。
首选是 Go 或者 Elixir,但是脱离 JVM 意味着不仅业务要重写,对接的众多第三方服务也要重写,周除了易出错,周期也会拉的很长,风险明显超出我能 handle 的范围。
然后考虑的是挂 agent 改字节码协程化方案,对我们而已,跟魔改 JVM 的方案一样,风险偏高,代码层面仍然要改造不少地方。
Vertx 3.6.x 开始,会给回调方法自动生成用于 Kotlin 协程的 xxxAwait 方法,第一时间拿来试了一下,然后就停不下来了,最近完成了整个项目所有代码的协程改造。总结下来就是真香,举个例子,接入公司自研的微服务体系,之前是几千行代码的 NIO 实现的,再后来基于 netty 重写也有大几百行代码,到现在的 vertx+协程不到 500 行代码了。
协程
代码
jvm
vertx
6 回复
|
直到 2019-12-06 13:44:14 +08:00
1
cpdyj0
30 天前 via Android
是的,非常香,写起来非常舒服
2
lbp0200
30 天前 via iPhone
厉害了
3
tt67wq
30 天前
elixir 也香
4
blackccc
29 天前
有什么缺陷吗
5
foamvalue
24 天前
一般什么业务场景呢?
6
itfanr
6 天前
vertx+协程不到 500 行代码了……
关于
·
FAQ
·
API
·
我们的愿景
·
广告投放
·
感谢
·
实用小工具
·
1405 人在线
最高记录 5043
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 25ms · UTC 17:23 · PVG 01:23 · LAX 09:23 · JFK 12:23
♥ Do have faith in what you're doing.