(想法) 如果只有服务注册中心.

发布于:2023-03-12 ⋅ 阅读:(33) ⋅ 点赞:(0)

目前,市面上以及出现了各种各样的适用于微服务(下面简称ms)的注册中心,配合其使用的还有各种ms框架,例如Alibaba的Dubbo

微服务能通过分解服务粒度,然后针对特定服务进行性能扩展,来达到高性能的目的。

其中服务中心负责服务的注册和生命周期管理,Dubbo之类的微服务框架则对服务的注册, 负载均衡,服务鉴权, 服务调用等一系列操作做封装,供用户调用.

使得用户不用去关心微服务的实现细节。


我的想法相反,或许能让服务中心做更多的事。

我们可以从头,去设计一个服务中心:

  • 只管理服务名和服务地址。
  • 消费端索取服务时,则由服务中心来做负载均衡和一些额外的工作,直接给出服务提供方地址。

其他的功能可以按照现有的服务注册中心来设计。

关于微服务的调用,则由服务注册中心提供一个微服务库,来供我们调用,或者由用户自己实现。这个架构下,就不需要Dubbo之类的RPC框架。

优点:模块减少,开发成本可能会减少。

缺点:需要服务中心来提供微服务调用库。(而且服务中心处理的东西变多了,不知道性能会有多少影响)

目前小生已经搞了一个类似这中服务注册中心的Demo,可以参考。

https://github.com/sdttttt/go...

(这只是一个我突发的灵感罢了,其实挺荒唐的。)