August 9, 2019

微服务要素

时至今日,微服务已经遍地开花,属于成熟的技术。一个基本合格的微服务应该是这样的:

网关

如果每个服务是业务担当的话,那么网关则是名副其实的技术担当。作为网关,它承担了诸多重任:

认证

来者必须亮明身份,否则不提供服务

服务注册与发现

微服务的特性就是将服务按照业务边界进行拆分,一个完整的商业会涉及到很多很多的服务,那么使用手动的方式进行管理就不现实,那么每个成熟的服务就需要自己照顾自己了。自觉到服务注册中心登记,自己叫什么名字,在什么地方,提供什么服务,现在的状态怎么样。这样其他需要的客户端服务就可以拿着号码牌自己联系了。

服务间通讯

服务之间必须使用相同的协议进行通讯,通讯的策略分为实时通讯和异步通讯,实时通讯即调用立即响应,常用的方式为Web ApiRPC两种方式,其中WebApi更适合服务跟终端进行通讯,基础协议为HTTP, 数据格式使用JSON,MSGPACK,通常会根据网络条件进行选择通讯成本低的。在各内部服务间通讯,则推荐使用RPC协议,当前gRPC成为了事实标准。

监控运维

似乎微服务就意味着服务多,那么多的服务,没准谁就会遇到个意外,那么有一个监控告警平台是必要的。少了它,等着用户来报告服务挂了,即便内部都是哥们跟你好声好气的说,但是到了客户那里就是不给你付费了。

监控运维包含多项内容

comments powered by Disqus

© Copyright 2019 Tairan Wang