微服务架构核心 20 讲
杨波
拍拍贷框架研发部总监,资深架构师,微服务技术专家
48677 人已学习
新⼈⾸单¥29
微服务架构核心 20 讲
登录|注册
留言
12
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 12 | 跟 Netflix 学习微服务路由发现体系
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 什么是微服务架构?
02 | 架构师如何权衡微服务的利弊?
03 | 康威法则和微服务给架构师怎样的启示?
04 | 企业应该在什么时候开始考虑引入微服务?
05 | 什么样的组织架构更适合微服务?
06 | 如何理解阿里巴巴提出的微服务中台战略?
07 | 如何给出一个清晰简洁的服务分层方式?
08 | 微服务总体技术架构体系是怎样设计的?
09 | 微服务最经典的三种服务发现机制
10 | 微服务 API 服务网关(一)原理
11 | 微服务 API 服务网关(二)开源网关 Zuul
12 | 跟 Netflix 学习微服务路由发现体系
13 | 集中式配置中心的作用和原理是什么?
14 | 微服务通讯方式 RPC vs REST
15 | 微服务框架需要考虑哪些治理环节?
16 | 微服务监控系统分层和监控架构
17 | 微服务的调用链监控该如何选型?
18 | 微服务的容错限流是如何工作的?
19 | Docker 容器部署技术 & 持续交付流水线
20 | 容器集群调度和基于容器的发布体系&结课测试
本节摘要

登录 后留言

全部留言(12)

  • 最新
  • 精选
LMD
置顶
关于《微服务架构核心20讲》课程讲义(PDF 文件),学员可复制下面链接到浏览器下载获取。 http://t.cn/RQs9iTw
2018-01-26
6
曲大伟
杨老师,现在kubernate讨论的比较多,我的理解他主要起到paas和支撑服务的角色,请问用它搭建微服务架构是否合适,对于运维和开发的要求和工作量是否高?

作者回复: k8s是开箱即用式的PaaS平台,Google基本上把微服务的基础能力(服务发现,容器资源调度,发布和监控等)都封装在这个平台里头。目前k8s在社区很火,我认为可以作为微服务平台的一站式解决方案。当然也可以走另外一条路,利用社区开源的组件,比如Spring Cloud自己组合拼装微服务平台。这两种方式各有利弊,前一种方式起步会快,但是随着业务发展难免需要深度定制,所以要有研发资源深入k8s的源码+深度定制的能力。后一种方式前期学习成本和门槛不低,需要有研发定制能力,但是后期会有更大的灵活性。简单讲,两条路都可以走通,但是如果要用好运维好的话,深度定制能力是必须的,千万别简单认为用一个开源产品可以解决所有问题,真正的复杂性在运维治理、流程和业务中。

2018-05-18
7
蔷薇尾巴
请问杨老师,聚合服务是必须的吗?如客户端使用异步调用多个请求服务,这样不是更快些吗?如果通过聚合服务调用,然后聚合服务再分别调用基础服务,这样是不是反而更慢些呢? 还有是否只有需要合并数据的时候才通过聚合服务,否者直接可以调用基础服务?谢谢

作者回复: 聚合服务并非必须,视情况可以直接调基础服务,要不要聚合层,要看业务规模复杂度,前端的迭代频率,团队规模和构成。小团体业务不复杂未必要聚合层。大团队分工业务复杂多变,通常需要聚合层,避免变化扩散到基础服务。另外,聚合层一般是异步并行调后端然后聚合数据。

2018-03-30
7
贼道
各种用途的gw什么时候应该独立部署,什么情况应该合并部署?

作者回复: 没有统一标准,简单讲看你的规模,原则是尽量单一职责,一种网关负责一种场景(无线GW,H5 GW,第三方联盟商GW,开放平台GW等等)。如果你的规模小人少,有些东西可以合起来,甚至只有一种网关(里头逻辑会复杂维护是问题)。规模大人多的话,尽量分分开吧,当然维护成本工作量也大。

2018-02-19
2
5
meijing0114
对老师说的服务注册组件console了解不多。如果用nginx做网关层的话,势必会遇到通过nginx模块或者lua脚本与服务注册中心进行通信的问题。一个明显的痛点就是如何把upstream中写死的ip列表,替换成后端的服务名称进行动态路由。并且能够感知后端服务的机器扩缩容。可能需要通过定期探测+定期获取缓存+失效移除的方式。

作者回复: 你的思考正确,可参考Consul Template这样的组件,它可以监视Consul中服务变化,动态更新nginx模板。研发能力强也可以定制自研lua角本对接服务注册中心,另外kong也可参考,内核也是nginx,定制扩展能力更强。

2018-07-10
3
柳十三
基础服务是做最简单的增删改查,不写任何业务逻辑还是什么,聚合服务里面到底做什么呢?杨老师能解释下吗

作者回复: 有些公司做法基础服务基本上就是数据访问层(对领域模型的增删改查),也有公司基础服务也是包含一定业务逻辑的,比如订单服务/支付服务。聚合服务主要聚合/裁剪/适配工作。 聚合:比如首页同时要展示分类和产品信息,那么首页聚合服务同时要调用category和product两个服务再聚合起来。 裁剪:针对手机屏幕,显示不了那么多数据,所以要裁剪掉一些payload。 适配:适配不同的端用户体验设备,PC/Pad/Mobile等。

2020-04-18
2
小北
波波老师,您好。听了你的课程受益匪浅。有个问题请教一下,目前有些架构师在服务发现的选型上使用了zookeeper,但个人觉得这个框架貌似不合适做微服务的服务发现。您对这个有什么建议么?

作者回复: zk可以做服务发现,阿里的dubbo还有新浪微博的motan都支持zk做服务发现。zk是一个通用的分布式协调框架,自己做服务发现的话,需要在上面进一步封装,有一定门槛,不如eureka开箱即用简单。

2018-06-04
2
冷月无声
杨老师,外部服务直接通过网关调用内部聚合服务的时候是不是都会先通过网关去注册中心里的路由表中查询到具体的聚合服务,然后聚合服务再去调用基础服务,然后基础服务在注册网关中发现聚合服务,进行返回?

作者回复: 服务调用/返回和注册中心/服务发现没有直接关系。 外部客户端->网关->聚合服务->基础服务,这个是微服务调用链。基础服务->聚合服务->网关->外部客户端,这个是微服务响应返回链路。 网关发现聚合服务,或者聚合服务发现基础服务,这些一般是后台异步进行,和客户端调用/返回没有直接关系。

2019-10-13
1
Jed
想问下无线GW主要是负责哪些场景呢?

作者回复: 无线网关主要负责无线原生Native和Hybrid等应用场景,这个是只是一种划分,具体每家公司的划分方式可能不太一样。

2019-08-18
1
我来也
有个疑惑: 现在的k8s,Istio都有一些服务发现和注册的能力了, 如果是简单的场景,是否可以不再引入单独的服务注册中心了呢?

作者回复: k8s平台内置支持服务发现,所以不需要再单独引入服务注册发现中心。

2020-05-18
收起评论