跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Vertx 4.0 is released
未分類
7 12 月 2020

Vertx 4.0 is released

Vertx 4.0 is released

資深大佬 : hantsy 18

https://vertx.io/blog/eclipse-vert-x-4-released/

大佬有話說 (19)

  • 資深大佬 : yanzhiling2001

    知道了

  • 資深大佬 : liuzhaowei55

    大佬们有没有推荐的脚手架或者项目架构推荐下的,自己组织的太丑陋了

  • 主 資深大佬 : hantsy

    组织代码你是自己的事啊。Vertx 这种我倒是觉得挺自由的。Spring Boot 的 AutoConfig 实在有点受不了。

    用 Quarkus 吧,基础是 CDI+Vertx.

    https://github.com/hantsy/quarkus-sample/tree/master/vertx-routes-munity/src/main/java/com/example

  • 主 資深大佬 : hantsy

    https://github.com/hantsy/quarkus-sample/blob/master/vertx-routes-munity/src/main/java/com/example/PostsHandler.java

  • 資深大佬 : Cbdy

    资瓷

  • 資深大佬 : PDX

    @liuzhaowei55 这个东西太自由了……所以没有像样的脚手架,凭感觉写就好

  • 主 資深大佬 : hantsy

    试了一下,将上面的 Quarkus 代码转换成纯 Vertx 的。

    https://github.com/hantsy/vertx-sandbox

    遇到两个问题需要解决:

    1 。 如何全局注册 ObjectMapper ? Quarkus 有 CDI 帮助写一个 Bean 就行了。
    2 。PgPool 如何优雅的 Close 。Quakus 的 PgPool 内置,开箱即用的,CDI 有 Disposible 监控。

    纯粹编程式的代码,不用 Annotation,DI 等,这与 Helion SE 类似。https://github.com/hantsy/helidon-sample/blob/master/se-dbclient/src/main/java/demo/Main.java, 不过,Helidon SE 提供一些强制的接口,如 Service 。

  • 主 資深大佬 : hantsy

    Vertx 中的 Future 发现功能上比较弱,不如 Java 8 CompeleteStage 和 Munity 。

    Future 中有对应 Java 8 Stage 的 thenAccept 方法吗?

  • 主 資深大佬 : hantsy

    @sagaxu

  • 資深大佬 : sagaxu

    1. springboot 那套 ioc 同样适用于 vertx,我就是这么混搭的,db 访问我干脆完全舍弃了 vertx 的组件,用了 spring data 和 jdbctemplate 。

    2. 有时简单的用 object Foo{},不需要搞 ioc,连接口都不用定义。

    3. Future 我完全不用,全部用协程了。

    4. 目前仍然比较麻烦的地方,很多 client 不能多线程 share,这个问题本来在 4.0 的时候会解决,一再延期搁置了。本来打包票说好 2019 年发 4.0 。

    5. 可能 blocking code 和 non blocking code 之间的衔接,还需要找到更简单的办法。

    vertx 做点服务挺好的,但是拿来写 crud,跟纯用 springboot 那套比,还是差一些。

  • 主 資深大佬 : hantsy

    @sagaxu Vertx 写一个简单 Restful APIs,比起 Spring Boot,传统的 Jaxrs,还是 Quarkus, 体验是差了些。

    Quarkus 的 Vertx Extensions 降低门槛,有了 CDI,很多基础的东西都是 outbox 了。

  • 主 資深大佬 : hantsy

    SpringBoot 实在太臃肿了。

    Quarkus 由于一开始就为 Native 准备,不能随意添加依赖,必须是 Quarkus Extensions, 好在 Quarkus 算是比较活跃,一般能用到的框架,工具等都是提供了集成。

  • 主 資深大佬 : hantsy

    @sagaxu 数据库这个 Vertx pg client 提供了也 Quarkus 中得到应用,体验比原始的 Jdbc 好一点,不如 Spring Jdbctemplate.

    Vertx pg client 等也是 Hibernate Reactive 的基础,Hibernate Reactive 刚发布了 1 。0 候选版本,Hibernate 使用与 Quarkus 一致的类型,Java 8 CompletionStage 和 Redhat 自家的 Smallrye Munity (也是 Redhat 实现 Microprofile Reactive Messages 的基础)。https://download.eclipse.org/microprofile/microprofile-reactive-messaging-1.0/microprofile-reactive-messaging-spec.pdf

    说到这个 Microprofile Reactive Messages, 在 Quarkus 的使用真的好简单,可以直接把消息导到 SSE,WebSocket,这点比 Spring 简单多了。

    https://github.com/hantsy/quarkus-sample/blob/master/amqp/src/main/java/com/example/MessageResource.java#L22

  • 資深大佬 : sagaxu

    @hantsy vertx 自身的 bug 已经不少了,光 redis-client 我就遇到过 3 个致命 bug,quarkus 在 vertx 上面再封装一层,风险更高,我还是再观望一阵子。

  • 資深大佬 : dai875939260

    @sagaxu #14 我记得最早 Quarkus 连 redis 客户端都没有,那时候直接用 vertx3 的 redis 确实有 bug,而且引入了这个没办法编译成可执行文件,那时候馋 Quarkus 可执行文件的启动速度。Quarkus 最早讨论也不是想引入 vertx 的 redis,而是 lettuce,[Offer a Redis extension]( https://github.com/quarkusio/quarkus/issues/4453)

  • 資深大佬 : dai875939260

    等 Quarkus 支持 Kotlin Coroutines( https://github.com/quarkusio/quarkus/issues/10162),到那时候我觉得就可以玩起来了

  • 主 資深大佬 : hantsy

    lettuce 似乎是最通用的 Redis Client,Spring Boot 也默认使用它连接 Redis,本身支持 ReactiveStreams 。

  • 主 資深大佬 : hantsy

    Kotlin Coroutines 除非是 Kotlin 团队自己来解决 Compile 时处理问题,否则我觉得支持难度很大。

  • 主 資深大佬 : hantsy

    Spring 自己的 GraalVM 项目已经开始了很长时间,但是由于 Spring 设计过度依赖运行时 Proxy,这个项目启动应该有一年了,一直没毕业,里面的 Sample 也是简单的例子,离实际应用估计还很遥远。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具