万物同源,技术跟人生一样,逃不出孤独的命运! weir 2021-10-09 22:09:44.0 weir 229 最近了解一遍网关,我这里指的网关指的是kubernetes所谓的原生ingress,其实知道的人都知道kubernetes是没有网关能力的ingress是各种第三方的插件而已。 最开始我看到了kong&konga的可视化能力准备用consul整合下结果在consul整合这里就是失败了,怎么都整合不上; 后面我又测试了ingress-nginx这个倒是可以实现网关的作用,当然就需要自己写配置了; 在查资料的时候发现了Apache APISIX结果更让人生气,安装都没有成功,后面看了下文档在可视化配置上面没有比konga强哪去; 当然你可能疑问为什么不用istio他也有网关功能,istio可能是国内用的最多的服务网格技术了,大厂也是改造了来用; 谁让我接触linkerd2比较早呢,所以对istio提不起兴趣; 大家可能更疑惑了,这家伙这么吊这么多网关都瞧不上,这我就要给你说说我最近在学习研究的技术了。 quarkus红帽开源的云原生微服务架构,A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards. 这句话怎么翻译我就外行了,大家去官网一看便知,我可以说下我的感受,我的博客已经用它重构了,还做了基于quarkus+JWT的RBAC细粒度权限控制的基础demo, 在我看来但应用的java后台基本可用quarkus搞定了,也就是彻底脱离spring体系技术栈,另外quarkus的出现不是一家,oracle(Helidon)也有开源的类此产品, eclipse基金会早些年就着手打造了vert.x, Eclipse MicroProfile,Micronaut由Grails框架的创建者开发,这些都是spring体系的下一代微服务架构技术产品, spring也提出自己的Reactive都在说明一个方向:反应式异步服务时代的到来。 有心的人可能已经发现了这些新一代技术框架的威力,无论从启动速度,内存占用,响应性能,云原生能力都大大的优越于spring架构, 所以spring也感受到了这一点,提出了自己的spring6.0和springboot3.0的构想,他们不约而同地在遵循一个规范就是Eclipse MicroProfile(一个让j2ee轻量级的新一代java企业级技术规范和实现规范)。 说到现在你是否明白我为什么在寻找我心目中的云原生网关了吧,如果是spring体系我何必大费周折的把最流行的网关看一遍,新一代技术架构体系算是才大放异彩吧, 甚至很多人还没听说过,虽然vert.x出现也有五六年了,早几年还有人写过文章,但是目前国内基本还是spring和dubbo体系,但是自从我大概一年前看到quarkus简直让我吃惊了。 我马上就有了重构我的博客代码的冲动,结果也是让我惊喜万分,java写代码也十来年了没见过这么优秀的框架,我不知道你们当年用springboot是什么心情, 我觉得quarkus吸收了目前最优秀的理念和性能,它的底层是vert.x和MicroProfile规范,而vert.x知道的人都知道它的底层是netty,netty可是在java通讯层占据着绝对的大佬的地位。 大家对oracle一直没啥好印象但是人家的产品GraalVM那可是让java在性能和内存占用上面更加优秀了,特别是native特性让java直接开杠golang应用。 说道quarkus就忍不住,我们还是来吐槽网关,之所以我看不上是因为目前的网关都太麻烦了,不是我心目中网关该有的模样。 说出来不怕你笑话,如果微服务应用一旦部署到kubernetes就可以智能的或者少量配合的情况下就可以发现并统一暴露出api这样的网关该多好。 先不要给我说什么网关其他特性,就springcloud体系下的api聚合我都觉得麻烦了,这么说的话原生麻烦了也不用这么吐槽。 我不知道我的这个想法是否可行,但是我知道我的这个想法很合理,否则人发明技术干嘛。 我们都说人类发明技术就是让人变懒的,java技术在所有语言的技术圈里面我觉得算是最成熟应用最广泛的技术了,我先不说历史就我工作的十年来看, 从spring hibernate/jpa struts Struts2 spring mvc spring boot spring data springcloud体系,再到现在的quarkus新一代技术架构, docker kubernetes这两年的火热,我觉得技术发展的也没有我想象的那么快,14年我接触了下hadoop到现在企业里面还是用这一套,有的还在用hadoop2,hadoop3整合的不多, 回头看看自己每个节点都没拉下可是也没有说那块特别精通,现在遇到了quarkus发现精力跟不上技术跟不上了,突然想起了爱情!!! 万物同源,难道人世间就是轮回的么?