SpringCloud中Sleuth+zipkin链路跟踪、订单的流量削峰的配置

Sleuth+zipkin链路跟踪

Sleuth用来产生链路跟踪日志

在这里插入图片描述

添加Sleuth
  1. 修改2,3,4,6的pom文件,添加sleuth依赖
  2. sleuth自动配置
zipkin的连接方式

在这里插入图片描述

2.,3,4,6的链路跟踪日志,发送到rabbitmq,再向zipkin中转发送
  1. 在2.,3,4,6添加依赖:zipkin client
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
  1. 在06添加rabbitmq的依赖和连接配置
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
  1. 修改06的application.yml:
  zipkin:
    sender:
      type: rabbit
      日志方式方式:rabbit
  1. 修改2,3,4的yml,添加发送方式,提交推送到远程仓库

Eureka客户端注册正确的地址

  1. 选择正确的网卡
    在bootstrap.yml里修改:
#选择注册的网卡
#必须在应用启动之前,在引导配置阶段完成
spring:
  cloud:
    inetutils:
      preferred-networks:
        #- 自己的物理网络ip网段
        - 172\.233\.5\..+   #. +是任意字符1个或多个
  1. 注册IP地址,而不是主机名

订单的流量削峰

导入项目

  1. 解压对应的文件
  2. 打开rabbitmq工程
  3. 修改pom.xml中springboot版本
  4. 右击点击add maven project加入maven工程

导入数据库

  1. 用sqlyog,右击点数据库连接,找到对应的sql语句进行导入
  2. 成功后,进行刷新即可
  3. 如果失败,在sqlyog执行以下语句:
set   global  max_allowed_packet=1000000000;
set   global  net_buffer_length=100000;
set   GLOBAL  interactive_timeout=28800000;
set   GLOBAL  wait_timeout=28800000

删除测试用户
delete from pd_user
删除订单数据
delete from pd_order
delete from pd_order_item

启动项目

  1. 右击启动类,运行
  2. 在启动配置中,配置working directory,设置pd-web文件夹的路径
  3. 重启
  4. 访问http://localhost
    如果看到浏览器下载,可以清一下浏览器缓存

订单发送到rabbitmq

  1. 添加rabbitmq依赖

    org.springframework.boot spring-boot-starter-amqp
  2. yml配置rabbitmq连接

spring:
  rabbitmq:
    host: 192.168.64.140
    port: 5672
    username: admin
    password: admin
    virtual-host: hrj
  1. 在启动类(或者自定义自动配置类)中,配置队列的参数“orderQueue ,true(持久),false(独占),false(自动删除)”
//创建对象,封装队里的参数,配置使用的队列
//orderQueue,持久,非独占,不自动删除,自动配置
@Bean
public Queue orderQueue(){
	return new Queue("orderQueue",true,false,true);
}
  1. 修改OrderServiceImpl.saveOrder(),使用AmqpTemplate封装工具发送订单
订单的消费者配置
  1. rabbitmq的依赖、连接配置、使用队列配置
  2. 新建消费者类:OrderConsumer
  3. 通过注解配置,从orderQueue接收订单
  4. 调用OrderServiceImpl.saveOrder()存储订单
  5. 调整OrderServiceImpl
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值