写点什么

三点微服务标准化要素

作者:阿泽🧸
  • 2022 年 6 月 15 日
  • 本文字数:1060 字

    阅读完需:约 3 分钟

三点微服务标准化要素
一、接口标准化

接口标准化在微服务架构设计过程中发挥着重要的作用。在微服务的交互中,统一规范的接口标准可以大大减少沟通成本,提高开发和维护效率。很多公司主流协议为 HTTP 协议和 Protobuf/Thrift 协议,HTTP 协议开发、测试比较方便,而 Protobuf/Thrift 等二进制协议性能更好些。


一般来说,和端交互比较多的业务服务使用 HTTP 协议较多,对性能有一定要求的后台基础服务偏向使用二进制协议。以 Thrift 协议来说,Thrift 协议本身有自己的一套 IDL,通过 IDL 生成标准服务代码,包含数据通路和类型定义,相对规范;为了保持微服务接口层面的一致性,实现微服务接口标准化,HTTP 协议可以参考 Thrift 协议的思路,增加 IDL 描述支持。


HTTP 服务的 IDL 化可以规范标准、降低人为操作的出错率、降低下游服务接入成本和维护成本。下游服务不需要再维护代码,只需要维护配置,这点对于尚未使用统一的服务治理框架的团队来说特别有益。下游服务的升级修改收敛于单纯的 IDL 文件,版本更好管理。


我们可以基于接口标准化,为接口增加相应的描述信息,并通过代码自动生成机制,将 IDL 文件直接生成接口文档,实现接口文档标准化。为了减少业务对服务治理支持的开销,可以把服务治理相关的配置放到 IDL 文件,实现服务治理配置的代码化。因此,IDL 文件成为服务标准化中非常重要的一个载体,通过 IDL 文件可以实现接口标准化、文档标准化和服务治理标准化。

二、日志标准化

日志标准化是服务标准化的关键一环,各个微服务之间只有遵循相同的日志规范,才能方便后续的日志治理,针对 Log、Trace 等日志形态,均需要制定统一的规范。日志输出的目的不仅是发现问题,好的日志可以帮助我们快速排查出问题的原因,进而采取相应的应对措施,因此日志规范需要聚焦如何更加方便快捷地追查问题,提高问题追查的效率。

三、透传通道标准化

为了对微服务进行精细化的治理和管控,很多服务治理特性均需要在同一请求处理的各个环节获取到请求相关的服务治理信息,因此系统需要能够支持服务治理相关的信息在请求处理的整个链路中透传,服务治理聚焦的都是非功能需求,这些需求业务服务其实是不需要关注的,因此需要有一定的机制来减少服务治理的非功能特性对业务的侵入,最大程度上实现业务透明的服务治理接入。


透传通道就是为了实现上述所说的服务治理透明接入,思路是将服务治理相关的非功能需求信息从业务中解耦出来,在所有微服务之间进行传递。透传通道承载业务无关的服务治理信息传递,是业务微服务和服务治理基础设施的桥梁,关系到整个服务治理的效率和效果,因此需要有标准化的透传通道,实现通道数据传输的可靠、透明和可扩展。

发布于: 刚刚阅读数: 4
用户头像

阿泽🧸

关注

还未添加个人签名 2020.11.12 加入

还未添加个人简介

评论

发布
暂无评论
三点微服务标准化要素_微服务_阿泽🧸_InfoQ写作社区