准备搭建一个公司自用的 iot 平台,要求实现设备监听和 rag 知识库,但是公司现有的开发人员包括我在内只有 3 人,都是 Java 开发,前端是兼职的,3 个人的开发水平不一,另外两位没有接触过响应式编程以及 spring ai 和 langchian4j 看了下开源的 iot 平台,感觉 jetlinks 不错,但是都是用的响应式编程,可能会有一定的学习难度,企业版的功能基本符合客户预期,就看公司舍不舍得出钱了
webflux 确实感觉有点反人类,还要配合 r2dbc 使用才行,可能就算是用 jetlinks 到时候估计也会有一大堆问题,看能不能先直接上 jdk25 的虚拟线程,还是用传统开发模式,对于设备实时监听和 rag 的时候用 websocket 和 sse
1
wysnxzm Jan 30
用新不用旧
|
2
ThinkCat Jan 30
如果为了快速出产品,还是先用稳一点的技术,不至于一边弄一边填这些技术或者学习的坑。传统模式挺好的,ws 和 sse 支持目前都不错。 如果后面真的碰到了性能的天花板,再换也不迟。
|
3
xbhayi Jan 30
我感觉主要是设备监听 都是 netty 的,虚拟线程和 WebFlux 区别不大吧
|
4
dode Jan 30
多开点内存
|
5
CaspianJou Jan 30
虚拟线程,有几个项目在用了目前没发现啥大问题。唯一就是注意 synchronized 目前有点问题,我记得会阻塞 Carrier Thread ,用 Reentrantlock 替代,说是 bug 后面版本会修。响应式还是太反人类了,非要用 webflux 建议全程 vibe coding
|
6
Yanickkk Jan 30
WebFlux 有污染性,能接受也还行,就和 async 一样,最开始就声明就好了,其他就没有什么。23 年写了好多,现在新项目改 virtualthread 了,简单很多
|
7
EastLord Jan 30
当然是虚拟线程啦
|
8
cookii Jan 30 via Android
虚拟线程,或者 vertx/quakus 吧,webflux 很难用
|
9
zed1018 Jan 30
@cookii 复议。webflux 享受不到 spring webmvc 的生态福利,但是又要享受到 spring 的一大坨。还不如换 vertx/quakus 。但是现阶段据说虚拟线程能达到 90%webflux 的性能
|
10
ymy3232 Jan 30
人工比内存贵 多开点内存就行
|
11
virus384 Jan 31
都用,并不冲突,webflux 的链式编程处理业务其实挺强的
|
12
chenPiMeiHaoChi Jan 31
以前写过两年 webflux ,很好玩,但现在建议虚拟线程。
|
13
fbu11 Jan 31
虚拟线程吧,都没掌握明白就先别用新技术,mqtt 、websocket 和 sse 都比 webflux 简单其实
|
14
kaneg Jan 31
@CaspianJou synchronized 问题据说已经在 Java 25 被解决了。
|
15
Gress Jan 31
用 JDK25 虚拟线程
|
16
coolmenu Feb 1
iot 以前选择 erlang/elxir 的比较多。。。
|
17
ccw4wcc Feb 2
个人感觉 webflux 对水平要求还是有一点的,不太易用,不太好维护
|
18
flmn Feb 2
虚拟线程出来后,webflux 没有意义了
|
19
Hudiebbk Feb 2
虚拟线程,用起来性能跟 webflux 差不多了,要是真要 webflux 可以考虑 vertx
|