第八日后端青训营 | 青训营笔记

66 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第8天

本节课主要针对微服务架构进行了初步探索,包括字节在实践过程中的种种技术路线与探索方式。

微服务架构介绍

微服务架构就是将单一程序拆分成一个一个的微服务,每个微服务运行在自己的进程中,并使用轻量级的机制通信,通常是HTTP RESTFUL API。这些服务围绕业务能力来划分,并通过自动化部署机制来独立部署。这些服务可以使用不同的编程语言,不同数据库,以保证最低限度的集中式管理。

微服务架构优势与劣势

优势:

复杂的业务拆分成多个业务,每个业务是一个独立的微服务,彻底的去耦合,利于分工,当需要增加业务的时候,可以方便创建新的微服务扩展业务,而不用担心有没有别的地方耦合 每个微服务都是独立部署的,如果其中一个宕机了,不会影响整个系统;也方便功能变更时,服务的部署;当流量增大后,可以将服务集群化部署,增强抗击高并发的能力 每个微服务之间可以使用不同的编程语言和不同的数据库

劣势:

在复杂程度上来说,微服务比单体建构要更为复杂些

部署比单体项目复杂

服务之间是用HTTP协议通信的,通信成本比单体项目高

数据一致性问题。

适用场景

适用场景:

大型复杂的项目

快速迭代的项目

并发高的项目

服务实践治理

请求重试

重试是系统提高容错能力的一种手段。在一次请求中,往往需要经过多个服务之间的调用,由于网络波动或者其他原因,请求可能无法正常到达服务端或者服务端的请求无法正常的返回,从而导致请求失败,这种失败往往可以通过重试的方式来解决。因此服务之间的重试机制提高了整个系统的故障恢复能力。

模板

总结

本节课主要针对微服务架构进行了详细介绍,关于服务实践部分的请求重试进行了初步了解,希望可以继续有所收获。