zhaoyh's blog


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 搜索

Spring Cloud之分布式链路跟踪服务Sleuth

发表于 2018-12-11 | 分类于 Spring Cloud

随着你的微服务部署节点的增多,以及对各个微服务的拆分后,对服务本身的日志和调用链路的监控就变得越来越难。这就需要一个能快速定位分布式系统下问题的需求,Spring Cloud Sleuth就是为了解决分布式链路追踪这个问题而产生的。

目前业界比较优秀的分布式链路追踪产品如Google的Dapper,Twitter的Zipkin,阿里的“鹰眼”,大众点评的CAT等。

本文主要讲述如何在Spring Cloud Sleuth中集成Zipkin,实现对微服务的日志跟踪和分布式链路的调用监控及展示。

阅读全文 »

Spring Cloud之数据流Stream

发表于 2018-10-23 | 分类于 Spring Cloud

Spring Cloud Stream是Netflix提供的数据流操作开发包,是为了提供微服务间消息通信而产生的一种框架,封装了与RabbitMQ、Kafka等中间件交互的操作。Spring Cloud Stream基于Spring Boot构建,开发者可以很方便地实现自己的消息通信实例。Spring Cloud Stream为不同的消息中间件提供了个性化的自动化配置实现,引用了发布-订阅、消费组、分区的三个核心概念。

阅读全文 »

RabbitMQ镜像队列原理分析

发表于 2018-10-16 | 分类于 消息中间件

对于RabbitMQ的节点来说,有单节点模式和集群模式两种,其中集群模式又分为普通集群模式和镜像队列集群模式,在《RabbitMQ集群架构搭建与高可用性实现》文中,介绍了RabbitMQ的集群创建步骤方法。而镜像队列集群模式的搭建步骤和普通集群模式是基本相同的,唯一不同的是,镜像队列集群模式,多了一步配置policy的步骤。本文主要介绍镜像队列的原理及实现。

阅读全文 »

Spring Cloud之消息总线

发表于 2018-07-19 | 分类于 Spring Cloud

在Spring Cloud之配置中心一文中,我们介绍了如何利用配置中心和Git仓库来对应用程序中的属性进行刷新和配置。即通过Github或Gitlab提供的WebHook服务通知各应用程序来刷新。但是随着微服务产品增多,如果对每个微服务都发送一个post请求会越来越难以维护。因此需要一个消息代理,我们只需要通知一个微服务,再由其发送消息到每个微服务实现配置的热更新。Spring Cloud Bus即实现了类似的服务。

阅读全文 »

RabbitMQ集群架构搭建与高可用性实现

发表于 2018-06-19 | 分类于 消息中间件

当你的RabbitMQ服务器遇到诸如内存崩溃或者断电等极端情况时,单节点是不能应对这些故障的。因此需要多节点集群部署来弹性应对故障。另外可以通过多节点部署,来扩展消息通信的吞吐量。

1. 集群搭建

首先,我们不用关心RabbitMQ的集群策略、节点类型等问题,可以先手动把RabbitMQ的集群搭建好,再一步步地了解其原理。

阅读全文 »

基于RabbitMQ实现延迟队列

发表于 2018-05-21 | 分类于 消息中间件

1. 延迟队列介绍

延迟队列顾名思义就是进入队列后,不会马上被消费,而是有一定的时间延迟,时间到期后再被消费。

1.1 应用场景

延迟队列可应用于一系列需要后期验证的功能,比如,账单支付超时确认、邮件发出后延迟确认等等。目前通用的解决方案是使用定时任务框架,或者采用时间轮询的方式,实现的成本较高,也不利于出错后自动重试。

阅读全文 »
<i class="fa fa-angle-left"></i>1…345…8<i class="fa fa-angle-right"></i>

45 日志
7 分类
58 标签
RSS
© 2023 zhaoyh
京ICP备2022006929号-1