zoukankan      html  css  js  c++  java
  • zipkin 服务跟踪

    场景:系统访问服务很慢,如果在每个系统都加切面拦截arond ,打印查看访问时间。这个比较繁琐,系统多了也比较不科学。

    springcloud 的一组件 zipkin 为我们提供了这样的工具。

    官网:https://zipkin.io/pages/quickstart.html

    分两步实现服务跟踪,查找慢点:

    第一步:部署服务。

    官网提供有3种方式给我们。

    1、docker 部署服务。

    2、下载jar运行。

    3、下载源码编译运行。

    最近都在使用docker,所以我选择了第一种,也是官网推荐的:docker

    docker run -d -p 9411:9411 openzipkin/zipkin

     修改了下官网提供的脚本:加上内存限制,跟服务启动自启。重命名容器。

    docker run --restart=always 
    -m 1000M --memory-swap -1 
    -d --name zipkin 
     -p 9215:9411  
     openzipkin/zipkin

    运行后发现内存开销也就200多M。

    CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O           PIDS
    974bf61270d5        zipkin              0.05%               292.3MiB / 1000MiB   29.23%              731kB / 1.75MB      0B / 0B             18

    访问:http://192.168.89.190:9215/

    我这里编辑部署到服务器上:写了个zipkin_docker.sh 脚本

    [root@localhost soft]# mkdir zipkin
    [root@localhost soft]# cd zipkin/
    [root@localhost zipkin]# vi  zipkin_docker.sh 
    docker run --restart=always 
    -m 1000M --memory-swap -1 
    -d --name zipkin 
     -p 9215:9411  
     openzipkin/zipkin

    第二步:springboot应用整合zipkin服务。

    我们这里不用管服务端,客户端,只要配置上zipkin地址即可。

    application.yml

    spring:
      zipkin:
        enabled: true
        base-url: http://192.168.89.190:9215

    项目pom.xml增加依赖jar

           <!--服务链路追踪-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-sleuth</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-sleuth-zipkin</artifactId>
            </dependency>
        <properties>
    <!--zipkin2.12.x需要此版本jooq -->
            <jooq.version>3.11.11</jooq.version>
            <zipkin.version>2.12.2</zipkin.version>
            <zipkin-storage-mysql.version>2.8.4</zipkin-storage-mysql.version>
        </properties>

      我有3个服务。

     web-pc

     server-search

       server-db

    第三步测试结果:

    点击查询按钮,可以看到如下结果。点击每条记录,可以看到每个服务的具体每个方法请求耗时。。

  • 相关阅读:
    eclips搭建python开发环境
    win7下odoo服务启动又停止解决方法
    ubuntu14.04调节屏幕亮度
    在ubunut下使用pycharm和eclipse进行python远程调试
    读书笔记——乔布斯,做最好的自己,共创式教练
    压力测试工具——Galting
    番茄工作法和Bullet Journal笔记法
    Openstack Swift中间件编写
    《黑客》读书笔记
    用腻了bootstrap的可以试试semantic-ui
  • 原文地址:https://www.cnblogs.com/a393060727/p/13225054.html
Copyright © 2011-2022 走看看