美文网首页
微服务 13: 微服务的调用链路追踪 - Skywalking(

微服务 13: 微服务的调用链路追踪 - Skywalking(

作者: _River_ | 来源:发表于2021-04-16 22:55 被阅读0次
    1:调用链路技术汇总
    链路追踪技术汇总 SkyWalking,CAT Zipkin,Pinpoint。
    
    推荐:SkyWalking是本土开源的基于字节码注入的调用链分析,以及应用监控分析工具。
    特点是支持多种插件,UI功能较强,接入端无代码侵入。
     
     注意:SkyWalking对于性能还是由百分之10左右的影响的
            推荐在测试环境或者预发布环境使用(注意SayWalking的实时刷新有问题)
            
            在正式环境则需要慎重选择
     
    主流技术对比: https://blog.csdn.net/u011177064/article/details/104383133    
    
    2:SkyWalking 快速应用
    资源下载: https://archive.apache.org/dist/skywalking/6.5.0/
    
    Skywalking 包含两大部分:
        服务端:/bin 目录中有启动脚本,用于收集监控数据以及可视化界面展示。
        代理端:/agent 目录 , 启动实际应用前,添加 jvm 参数,使用 javaagent 技术监控 应用。
        
    
    启动:/bin 下的startup.sh
      启动后会运行两个服务:
        Skywalking-Webapp:管理平台页面 ,默认端口 8080,登录信息 admin/admin
        Skywalking-Collector:追踪信息收集器,通过 gRPC/Http 收集客户端的采集信息 ,Http默认端口 12800,gRPC默认端口 11800。
    
    修改Skywalking-Webapp的启动端口   修改为10002
        apache-skywalking-apm-6.5.0\apache-skywalking-apm-bin\webapp\webapp.yml 
    
    默认存储是使用的h2,可以修改为mysql 、elasticsearch 等存储系统  不做修改
    配置文件:apache-skywalking-apm-6.5.0\apache-skywalking-apm-bin\config\application.yml
    
    3:SkyWalking 界面
    4:SkyWalking 监控项目代码
    配置服务VM启动参数 并启动
    -javaagent:A:\Instrument\apache-skywalking-apm-6.5.0\apache-skywalking-apm-bin\agent\skywalking-agent.jar -Dskywalking.agent.service_name=gateway
    
    以此类推 配置其他服务重新启动
    
    5:启动优化
    特别注意:如果你的电脑内存少于16G建议 修改一下服务的启动参数
    
     -Xms512M -Xmx512M (注意-号 由于编辑文件原因 在Vm上需要改为 “— ”  )
    

    注意:如果是jar包启动
    java ‐Xms512M  ‐Xmx512M  -jar name.jar
    

    -Xms:初始堆的分配大小  默认为物理内存的六十四分之一  (‐Xms512M )
             
    -Xmx:堆的最大分配大小(默认为物理内存的四分之一);(‐Xmx512M) 
            (Server端JVM最好将-Xms和-Xmx设为相同值);
    

    -Xmn:   Java Heap Young区大小,不熟悉最好保留默认值; (-Xmn256M)
    -Xss  :   每个线程的Stack大小,不熟悉最好保留默认值;
    -XX:+PrintGCDetails:打印信息
    XX:MetaspaceSize=64M  (元空间)
    ‐XX:MaxMetaspaceSize=64M (元空间)
    

    图1设置为512M  图2设置为256M  (额。。。效果不太明显。。。)
    
    5:进行测试
    请求 
    先把consumer服务的的providerDemoFeignClient/test接口 改为4次重复调用
    
    http://127.0.0.1:9000/nacos-consumer/providerDemoFeignClient/test
    
    如图可以看到服务之间的拓扑图
    User(用户)调用  consumer服务的接口
    consumer服务再去调用 provider服务的接口
    
    如图分别有3种形式可以看到请求链路
    
    1:列表 快速观察响应时间
    2:树    快速观察调用关系
    3:表格  快速看到所在服务
    

    项目连接

    请配合项目代码食用效果更佳:
    项目地址:
    https://github.com/hesuijin/spring-cloud-alibaba-project
    Git下载地址:
    https://github.com.cnpmjs.org/hesuijin/spring-cloud-alibaba-project.git
    
    在模块下 skywalking-agent-start.md 文件可以看到相关配置
    

    相关文章

      网友评论

          本文标题:微服务 13: 微服务的调用链路追踪 - Skywalking(

          本文链接:https://www.haomeiwen.com/subject/fxtslltx.html