作者简介:吴梦麒,花名韩述 阿里巴巴中间件技术专家,Alibaba Tengine核心研发。主要负责阿里集团Tengine以及统一接入网关的开发和技术演进,目前关注Nginx、云原生、Service Mesh等领域。
什么是Tengine
Tengine是Alibaba基于Nginx开发并开源的Web服务器,它继承了Nginx所有的功能和特性,并在其基础上做了大量的扩展和增强,其中像动态模块加载,四层负载均衡,reuseport支持等能力,都逐渐被Nginx官方吸收引用。Tengine在开源以后大受欢迎,成为了Nginx最好的替代品之一,官方网站(http://tengine.taobao.org/)
Tengine/Nginx目前在各大公司中主要的场景是作为入口网关的反向代理转发组件使用,通常负责如下功能:
什么是Dubbo
Dubbo最早是由Alibaba开发并开源的一个RPC框架,后逐步完善了注册中心、服务治理等能力,目前已成为最受欢迎的服务框架之一,现在Dubbo已经捐赠给Apache基金会继续发展,官方网站(http://dubbo.apache.org/)
典型的Dubbo系统架构如下:
传统网关技术架构
在过去Nginx/Tengine不支持Dubbo的情况下,传统的网关技术架构大致为: 接入网关集群(Nginx或Tengine)-> 业务网关集群(基于Tomcat或者Netty自建)-> 业务服务(暴露Dubbo服务) 类似如下图: