浏览 1.8k
继续软件架构系列之行业应用篇,相信很多人用NGINX,也很多人用NGINX架构不同的能力,
接下来,通过一张行业应用图,分析一下NGINX分层的含义及架构分层的必要性,上图先:
这张图咋一看会发现,好多NGINX呀,没错!这是某行业顶级的业务系统架构图,也是业内市场占有率第一的原版授权,从最外围的用户交互(好比我们使用手机app应用界面)- 第1层,到数据中心内网的接入(好比app背后的数据中心或云上部署)-第2层,再到应用负载的第3层(好比应用部署前面的SLB或接口机),进而到前端应用的能力封装和开放-第4层,再到能力中心调度池-第5层,最后到数据存储的第6层。
每一层的角色扮演都很明确和清晰,以第2层的NGINX来说,核心功能就是扮演大颗粒度的流量调度和高可靠,因此和传统的LB功能非常接近;以第3层的NGINX来说,核心功能就是扮演业务细颗粒度的流量精分和能力画像,因此和高性能的七层LB高级功能非常接近。因此,每层之间通过分层和解耦的方式,让能力封装更加专注,让精分模型更加贴近应用,某种层面上也把NGINX不同纬度的强项拆解到不同的应用场景中进行发力。
总结,好的系统或应用首先是有个好的软件架构,好的功能需要有灵活的架构支撑方能优质绽放,NGINX的灵巧性和高效适配性,既能独立承载也可混搭(例如:接入层可以是高性能的高端LB设备来统一承接,具体细项请关注下回分解)。
按点赞数排序
按时间排序