了解微服务架构

应用架构从单体架构、SOA架构到微服务架构、服务网格架构、Serverless架构的演变。

单体架构与微服务架构在架构演变中较为成熟。

1.单体架构

应用程序会耦合多个子模块,子模块相互配合才能完成特定领域的业务功能。

了解微服务架构_第1张图片

用户通过浏览器访问业务功能;用Apache服务器作为前端的负载均衡器,整体后端业务被通过一个War包部署到Tomcat集群;业务功能可以整体扩展,DB共用一个数据库。

2.微服务架构

简单定义为一堆松散耦合的组件,他们在一起工作执行任务;这些轻量级的组件可以通过各种语言(java、python、PHP)完成开发,并且可以使用各种协议(HTTP、HTTPS、JMS)进行通信,大多数微服务通过REST API暴露服务,完成跨平台服务调用。

微服务架构遵循“高内聚、低耦合”的架构设计原则。

了解微服务架构_第2张图片

 客户端App和浏览器:微服务的服务对象,功能体验者

负载均衡器:通常指nginx和SLB等

API Gateway:通常指业务网关。常规的技术栈包括springcloud gateway和zuul等

Web服务:通常指RESTful API服务。他通过后台管理系统统一配置API的路由信息,并实时将路由信息推送到由API Gateway,API Gateway将RESTful API通过统一的域名暴露给App或者浏览器

Web服务与微服务通过RPC通信,也可以通过HTTP通信,API Gateway也可以直接与微服务通信,比如springcloud gateway可同时支持dubbo和RESTful API通信。

你可能感兴趣的:(架构,微服务,java)