• michael
    2018-08-28
    老师,服务追踪中,为什么各服务层需要生产自己的requestid,只使用客户端生成的requestid在各层传递不行吗?
     4
     47
  • oddrock
    2018-08-28
    微服务架构下要解决的服务描述、服务注册与发现、服务框架、服务监控、服务跟踪、服务治理其实在soa下基本都同样存在。
    soa下服务描述用wsdl,服务注册与发现用uddl,服务框架、服务监控和服务跟踪、治理基本都依赖esb,治理还要部分依赖负载均衡。
    同样情况在单体简单的多,服务描述就是api,服务注册与发现就是引用jar,监控、跟踪、治理在单体情况下基本不存在,最多用jvm监控工具来监控

    我的理解如上,还请老师指正

    作者回复: 看来对soa很了解

    
     45
  • 王宏达达达
    2018-08-29
    老师,微服务和分布式的区别到底在哪里呢?
    
     18
  • zhihai.tu
    2019-04-26
    微服务架构6大组件:
    1、服务描述:RestfulApi (http)、xml (rpc)、IDL (grpc)
    2、注册中心:注册(服务提供者->注册中心)、订阅(服务消费者->注册中心)、返回(注册中心->服务消费者)、通知(注册中心->服务消费者)
    3、服务框架
    4、服务监控(发现问题):指标收集、数据处理、数据展现
    5、服务追踪(定位问题):RequestId传递
    6、服务治理(解决问题):单机故障——自动摘除、单IDC故障——自动切换、依赖服务不可用——熔断
    展开
    
     15
  • 5ispy
    2018-08-28
    阿忠老师终于提到自动扩容,后面会细讲吗?这是不是支持8对明星并发出轨的关键🤪

    作者回复: 后面有一节会讲混合云下的微服务架构

    
     15
  • XuToTo
    2018-08-28
    看到一位同学讨论到 http 和 rpc,我的理解是,其实 http 服务从某种程度上来说也算 rpc,之所以不使用 http 来做内部 rpc,我想有一部分原因是 http 包含了冗余的信息,并不适用于内部高效的 rpc,像是 gRPC 这样的都会利用 protocol buffer 来最大限度减少序列化后传输信息的大小。
    
     10
  • 努力的小斌
    2018-08-30
    问requestID,大家可以看一下Google Dapper那篇论文
    
     7
  • godtrue
    2019-05-17
    阅后感
    个人感觉理解微服务的关键环节在于理解网络通信,最简单的微服务,比如:只有一个服务提供者也只有一个服务消费者,只要他们能通信相互理解就行。
    深入了理解他们通信的原理,其他的都是在机器增多,考虑网络环境的复杂多变,提供负载均衡、高可用、高性能、易维护、易定位问题、支持水平扩展的外围服务,是分布式系统都需要考虑的问题啦。

    希望后面能看的老师讲解这些,否则感觉就不是由浅入深层层推进的讲解方式了,理解起来令人费解。

    一个东西从无到有基本是有一个变化和积累的过程的,如果能清楚他不存在前会有什么痛点,他出现后解决了那几点痛点,那是很爽快的。当然一个技术方案在解决一些问题的同时总会带来另外的一些更加复杂的问题,希望后面老师能有所讲解。

    我觉得微服务的组成从核心一层层往外应该有以下组件组成:
    1:网络通信框架,什么协议?如何序列化和反序列化?
    2:服务协议,使用通用的?还是开源?还是自研?
    3:服务注册中心,订阅和发布服务信息
    4:服务治理平台,监控服务信息,管理服务信息,上下线服务,查看服务所属,查看服务调用链

    感谢老师的讲解,期待下文!
    展开
    
     5
  • vick
    2018-09-01
    服务故障问题在传统架构中的解决方式,一般是远程调用时要做超时处理,很多http client的第三方包都提供timeout的处理。同理微服务架构下的熔断机制相比之下有哪些优势,期待后面教程的分析。
    
     5
  • Final不基
    2018-11-13
    我们用spring cloud微服务框架。zipkin做链路监控,有办法链路到jdbc 数据库层么?

    作者回复: zipkin不支持,skywalking可以

    
     4
  • 大光头
    2018-08-30
    微服务下的问题在单体应用会有,但不是问题,因为天生满足。分布式之后,
    接口调用,就需要服务发现,服务注册和服务间调用。
    接口错误需要容错处理和熔断处理。
    接口性能,需要靠扩容。
    接口调用情况需要监控。
    问题排查需要全链路跟踪。
    展开
    
     3
  • Halo_浅色调
    2018-08-29
    为啥要两个requestId,我们以前就只用了一个来进行链路追踪,只用一个有啥缺陷吗

    作者回复: 一个requestid,一个是spanid,这里是为了描述原理抽象表达这个意思

    
     3
  • 猿一代
    2018-10-16
    c502和1999992,老师,今天微博热搜赵丽颖和冯绍峰结婚的消息报出来的分别是什么原因呀?
    
     2
  • greatcl
    2018-08-28
    如果服务提供者继续请求其他服务,会在本地再生成一个自己的requestid,然后把这两个requestid都当作请求参数继续往下传递。
    =========
    老师你好,想问下为什么要两个requestid都往下传递呢,只用第一个requestid不是就可以追踪到了吗?

    作者回复: 这里没有详细描述 其实是spanid 这里是抽象描述原理

    
     2
  • 贾洵
    2018-11-05
    既然设置一个跟踪ID,为什么不设置一个uuid做为调用唯一ID。这样既可以全程跟踪,又节省寻找串联请求ID的时间?

    作者回复: uuid没法区分调用的层级关系

    
     1
  • 维维
    2018-08-29
    到底使用http好还是rpc好呢
    
     1
  • 70
    2018-08-28
    服务描述,注册中心,服务框架,服务监控,服务追踪,服务治理。这些在单体服务中也存在,服务描述在任何时候都需要。注册中心和服务框架在单体服务中可能没有那么明显,单体服务中多数采用人为沟通和文档进行维护。服务监控和服务追踪,服务治理,这些部分的存在,可以让我们实时监控服务的运行状态,及时发现并解决问题,单体和微服务都是无法缺失的。在面对服务容量问题时,单体服务解决起来更加麻烦,由于没有服务拆分,所以需要根据所有业务中最小容量业务来进行计算扩容。哈哈,个人拙见,阿忠叔别生气
    
     1
  • eason2017
    2018-08-28
    在复杂调用中,应该还有熔断,这样避免底层服务拖死自身服务,对吧~

    作者回复: 嗯,熔断是一种非常有效的服务治理手段

    
     1
  • eason2017
    2018-08-28
    看到dubbo的影子了,嘎嘎
    
     1
  • feimeng0532
    2018-08-28
    单体应用的集群方式和微服务的治理,单体故障转移,
    
     1
我们在线,来聊聊吧