【Go 夜读】第 62 期 Go-Micro 微服务框架 Part 1

yangwen13 · · 507 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

>文章来自于:https://reading.developerlearning.cn/reading/62-2019-10-10-go-micro-part1/ 分享者:printfcoder ## 观看视频 https://youtu.be/ucTwnDB1m2U ## Go 夜读第 62 期 Go-Micro 微服务框架 Part 1 ## 内容简介 介绍Go-Micro的设计及其重要组件 ## 内容大纲 - 什么是 Micro - Micro 风格服务架构 - Go-Micro 框架的设计 - Go-Micro 主要的组件 - Go-Micro 的插件化 ## 分享地址 2019-10-10 21:00 ~ 22:00, UTC+8 https://zoom.us/j/6923842137 ## 进一步阅读的材料 - [Micro 项目](https://github.com/micro) - [Micro 文档](https://micro.mu/docs/cn/) - [示例项目](https://github.com/micro-in-cn/tutorials/tree/master/examples/basic-practices) - [PPT](https://docs.google.com/presentation/d/1xMOwC_Oa6MRluk73K1QgjTqcgeuBUuiGp4G4DfhpnIs/edit?usp=sharing) 请点击:https://github.com/developer-learning/reading-go/issues/457 ## Q&A 总结 1. micro 是Restful吗? 答:go-micro并不是一个web框架,不过go-micro中有web模块可以提供restful风格服务。 2. srv里面是包含client和server吗? 答:每一个服务都会有client和server,服务要能调用其它服务就需要一个client,能接收请求就需要server。 3. 为什么异构service互相调用一定要经过proxy,rpc不应该是编码和transport约定好本身就支持异构调用吗? 答:micro proxy并不支持互调,它提供一个go-micro特性的代理,其它非go-micro风格的服务通过这个代理加入go-micro体系,便可以通过proxy被其它服务调用,可以是http、grpc等。 我会在未来几天增加一篇专门介绍micro的文档在这里:[micro proxy](https://github.com/micro-in-cn/tutorials/tree/master/examples/senior-practices/micro-proxy) 4. micro与k8s 答:这是一个常见的问题,micro会常与k8s、istio比较或联系,这是不公平的也是不合理的。主要在这么几个方面: a) micro与k8s同时起步,或者说micro更早些,k8s的产生是基于容器技术的兴起,而容器需要管理与编排。K8s确实给大型服务集群提供了极好的运维平台,但是它在一定适度上并不是面向开发人员的工具,更多是面向运维人员的。 b) 基于a,**Micro是面向开发人员的微服务框架**,如果人们用了K8s,那应该就不要用micro。 c) 绝大部分开发者可以试问内心的需求:自己当下的服务运行需求,真的需要K8s吗?说句傲娇的话,如果不能看到micro的价值,那请不要使用micro,在K8s中使用micro,就像皇宫的大内总管,少了件最重要的东西。 5. 为啥要 consul 换成 etcd 答:从4年的结合Consul经验来说,它工作得比较正常但并不尽如人意,它有太多功能我们用不到。consul更多是面向Hashicorp体系的服务,而Etcd则更纯粹是服务注册组件,是的,我们需要更纯粹的中间件。更多可以参考一篇不太细致的博文:[deprecating-consul](https://micro.mu/blog/2019/10/04/deprecating-consul.html) 6. client 和server可以在一个go文件中吗? 答:可以,但是为什么要这么做哩? 7. go-micro中如何使用链路追踪? 答:在go-micro中提供了装饰器Wrapper可以集成任何支持go语言的链路追踪插件。见:[Tracing](https://github.com/micro-in-cn/tutorials/tree/master/examples/senior-practices/tracing) 8. Go-Micro 设计初衷、目标以及未来发展方向? 答:Go-Micro 设计初衷是做一套面向开发人员的微服务框架,她要使用简单、扩展简单、管理简单。但是仍然有很长的路要走,从技术上讲,目标是要发展成Java界的Spring Cloud。 关于未来的发展,一个技术终究是要赚钱的,Micro公司的开发与发展目标,[详见](https://github.com/micro/development)与[Network](https://github.com/micro/development/blob/master/network.md) ---

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

507 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传