Java 目前实现全异步的方式有哪些

2021-07-25 10:20:35 +08:00
 ljzxloaf

除了 callback

7493 次点击
所在节点    Java
48 条回复
sagaxu
2021-07-25 13:50:33 +08:00
@ccde8259 loom 稳定版不太可能赶得上 17 了,下一个 lts 应该问题不大,下一个 lts 还能期待一下满血版的 zgc
ljzxloaf
2021-07-25 13:55:47 +08:00
@ccde8259 #18 理想丰满,现实骨感😂
ccde8259
2021-07-25 14:02:41 +08:00
@sagaxu 再等下一个 LTS 怕是已经开滴滴送外卖去了……人生能有几个 LTS ?
zoharSoul
2021-07-25 14:57:11 +08:00
Vert.x + kotlin
wqhui
2021-07-25 17:26:33 +08:00
用 webflux 写过一个主要耗时是 io 的服务,webflux 这套东西很少看到有人用,目前只有 no sql 的数据库支持异步,比如 mongodb 、redis,传统的 mysql 不行,写复杂业务很恶心,而且懂这套的人太少了,意味着二次开发及维护困难,一般就网关用用,属于小众的大杀器
ljzxloaf
2021-07-25 17:32:25 +08:00
@wqhui #25 这么看也挺适合那种 BFF ( Backend for Frontend )聚合服务的,调接口组装数据再返给前端
Magentaize
2021-07-25 20:24:55 +08:00
说实话在 await 和 reactivex 里选 reactivex 使用体验更好,和同步方法的交互也更舒适,callback 肯定是能不用就不用
golangLover
2021-07-25 20:25:46 +08:00
看了一圈,结论是没有好的解决方案。唯有换 kotlin 。我知道 ea 发明了个 ea-async 但 ea 已经一两年没有维护了。
yazinnnn
2021-07-25 20:42:34 +08:00
Mutiny
reactor
rxjava
vertx

目前 java 的常用的 reactive 库就有这几个吧,都跟 kotlin 的 coroutine 有不错的互动
iseki
2021-07-25 21:42:45 +08:00
vertx + kotlin coroutine,爽(
golangLover
2021-07-25 21:49:29 +08:00
@Magentaize rxjava 就没见过在服务器端用的,基本上看到的都是在安卓用
pigspy
2021-07-25 22:01:12 +08:00
我们以前写 mqtt 服务器就是 vertx,用到了 kotlin,不过没用协程,写起来挺方便的啊
vertx 提供了很多异步风格的 client,我们当时就用到了 redis 和 hazelcast
fewok
2021-07-25 22:07:50 +08:00
累不累,直接上 golang 不好么?
oldmanong
2021-07-25 22:14:51 +08:00
在以前的公司用 rxjava 把所有服务端改为了异步,技术性大于实用性,有一些坑需要注意。后端主要的瓶颈还是数据库,没见过单纯因为线程数不足而影响服务的情况
qiyuey
2021-07-25 23:21:30 +08:00
阿里的 wisp2 可以
micean
2021-07-25 23:27:33 +08:00
投票里的 vertx stack 和 kt coroutine 应该算是同一个吧。。。大部分用 vertx 都转 kt 加持了
Feiex
2021-07-26 00:14:35 +08:00
推荐 ParSeq,一个 java 异步化工具。

生产环境大规模实践过。
sagaxu
2021-07-26 00:36:23 +08:00
@micean vertx 和 kt 不能算同一个,kt 也有用 ktor 的
iseki
2021-07-26 02:59:43 +08:00
毕竟纯 vertx 写起来挺难受的
dreamramon
2021-07-26 05:13:17 +08:00
用 vertx 6 年了,很方便啊。

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

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

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

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

© 2021 V2EX