14、开源RPC框架如何选型

专栏第6期我给你讲解了RPC远程调用的原理,简单回顾一下一个完整的RPC框架主要有三部分组成:通信框架、通信协议、序列化和反序列化格式。根据我的经验,想要开发一个完整的RPC框架,并且应用到线上生产环境,至少需要投入三个人力半年以上的时间。这对于大部...

从0开始学微服务

13、开源服务注册中心如何选型

上一期我给你讲了服务注册中心的落地实践,以及在实际应用中可能会遇到的问题和对应的解决方案。关于注册中心,如果你的团队有足够的人才和技术储备,可以选择自己研发注册中心。但对于大多数中小规模团队来说,我的建议是最好使用业界开源的、应用比较成熟的注册中心解...

从0开始学微服务

12、如何将注册中心落地

专栏第5期我给你讲了服务注册和发现的原理,这里面的核心是服务提供者、服务消费者和注册中心这三个概念,以及它们之间的交互关系。你可以先回顾一下这几个关键的知识点,如果有不清楚的地方,建议你先返回第5期复习一下,再开始今天的学习。 掌握了服务注册和发现的...

从0开始学微服务

11、服务发布和引用的实践

在专栏第4期,我给你讲解了服务发布和引用常见的三种方式:Restful API、XML配置以及IDL文件。今天我将以XML配置方式为例,给你讲解服务发布和引用的具体实践以及可能会遇到的问题。 首先我们一起来看下XML配置方式,服务发布和引用的具体流程...

从0开始学微服务

9、微服务治理的手段有哪些

上一期我给你讲述了服务追踪的基本原理,有了分布式服务追踪系统,在服务出现问题的时候,我们就可以定位服务哪里出现了问题。一般单体应用改造成微服务架构后,还会增加哪些问题呢?又该如何应对呢? 前面我讲到单体应用改造为微服务架构后,服务调用由本地调用变成远...

从0开始学微服务

10、Dubbo框架里的微服务组件

经过前面几期的讲解,你应该已经对微服务的架构有了初步的了解。简单回顾一下,微服务的架构主要包括服务描述、服务发现、服务调用、服务监控、服务追踪以及服务治理这几个基本组件。 那么每个基本组件从架构和代码设计上该如何实现?组件之间又是如何串联来实现一个完...

从0开始学微服务

8、如何追踪微服务调用

在微服务架构下,由于进行了服务拆分,一次请求往往需要涉及多个服务,每个服务可能是由不同的团队开发,使用了不同的编程语言,还有可能部署在不同的机器上,分布在不同的数据中心。 下面这张图描述了用户访问微博首页,一次请求所涉及的服务(这张图仅作为示意,实际...

从0开始学微服务

7、如何监控微服务调用

与单体应用相比,在微服务架构下,一次用户调用会因为服务化拆分后,变成多个不同服务之间的相互调用,这也就需要对拆分后的每个服务都监控起来。 在讲述如何监控微服务调用前,首先你要搞清楚三个问题:监控的对象是什么?具体监控哪些指标?从哪些维度进行监控?下面...

从0开始学微服务

6、如何实现RPC远程服务调用

专栏上一期我讲过,要完成一次服务调用,首先要解决的问题是服务消费者如何得到服务提供者的地址,其中注册中心扮演了关键角色,服务提供者把自己的地址登记到注册中心,服务消费者就可以查询注册中心得到服务提供者的地址,可以说注册中心犹如海上的一座灯塔,为服务消...

从0开始学微服务

5、如何注册和发现服务

专栏上一期,我给你介绍了服务发布和引用常用的三种方式:RESTful API、XML配置以及IDL文件。假设你已经使用其中一种方式发布了一个服务,并且已经在一台机器上部署了服务,那我想问你个问题,如果我想调用这个服务,我该如何知道你部署的这台机器的地...

从0开始学微服务