导语
在上一篇博客中我们主要介绍了什么是微服务,读者可以用这篇文章进行简单的入门,当然仅仅阅读这一篇仍然是不够的,还需要广泛浏览相关概念,逐渐加深印象,可以更好的理解,在本篇文章中,主要分享了微服务框架的选型即Go-Mico,了解Go-Mico与微服务的关系。
Go-Mico是什么
这里采用官方解释,Go Micro是一个插件式的RPC框架。它用于分布式系统开发。这个插件抽象出了分布式系统的细节,下面这个图是它的一个架构图
启动服务源码剖析
看过了架构图,我们趁热打铁看一下服务是如何启动的,启动时又有哪些配置参数,我们可以看到服务的运行需要最基础的三个步骤
第一步:创建服务
其中的exmple便是我们的服务名,在框架中,经常使用go.micro.srv
做前缀。在这个函数中参数是micro.Option
函数数组,这些函数用来包装启动参数和配置选项。参数便是配置选项。
service := micro.NewService(
micro.Name("go.micro.srv.example"),
)
为了更好的理解我们对源码进行简单的分析
在上面的函数中可以看到最终配置选项进行了我们的newService()函数中,在这个函数中,首先做的就是对我们的配置进行了初始化,让我们看看是如何初始化的。