为什么升级版用spring boot开发了?
shuitai opened this issue · 1 comments
shuitai commented
为什么升级版用spring boot开发了?
xenv commented
上一个版本接口用的是 vert.x 开发,vert.x 引入了大量 js 风格,在中大型项目上面非常蛋疼,比如没有 POJO,全是 JsonObject。没有接口,只有类似反射的调用方法。没有 IOC,只能自己 new。包括配套啥的都要自己找,很麻烦。
好在 Spring 给了 Java 异步开发者一些希望。Spring Webflux 经过一年多的迭代,已经达到基本能用的水平。尤其是配套的 Reactor 3 采用了类似 Rxjava 的链式操作(或者可以理解为 Stream 的异步加强版),大幅简化了并行开发,异步开发的难度,提高了可读性。目前 Spring Webflux 已经集成在 Spring Boot 2 中,无缝和 SpringMVC 使用方法对接(包括方便的数据库仓库接口),并且可以无缝享受到 Spring Boot 全家桶。健壮性也比vert.x 好一些。升级版采用 Webflux 开发。
然而 Webflux 也继承了 Spring 家一贯臃肿的风格,性能比 Vert.x 差不少,不过好歹也是运行在 Netty 上,比同步开发的响应速度还是有质的提高。
(之前写在别的地方的,我直接复制过来了)