SpringCloud gateway + Nacos+ Skywalking


SpringCloud gateway+nacos+skywalking微服务小探索

小探索做个记录分享,大体结果是:

nacos:

一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台

SkyWalking:

SkyWalking 
是观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案.

SpringCloudGateway

为微服务架构提供简单、有效和统一的API路由管理方式,不仅提供统一的路由方式,并且还基于Filer链的方式提供了网关基本的功能,例如:安全、监控/埋点、限流等

1. 启动nacos&展示nacos

从官网链接下载,然后参考官方文档,启动服务

  1. 文档​,​​官方文档链接​​;
  2. ​下载最稳定的版本​​,我使用的是​1.1.3(Aug 6th, 2019)
  3. 启动:


启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalone
Windows
启动命令:
cmd startup.cmd
或者双击startup.cmd运行文件。
SpringCloud gateway + Nacos+ Skywalking 研究展示_官网
SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_02
SpringCloud gateway + Nacos+ Skywalking 研究展示_spring_03


2.启动和展示skywalking

从官网链接下载,然后参考官方文档,启动服务

  1. 文档​,​​官方文档链接​​;
  2. ​下载最稳定的版本​​,我使用的是​6.4.0
  3. 启动:


启动命令(standalone代表着单机模式运行,非集群模式):

  1. 启动skywalking
    1.1 安装目录 cd /Users/ws/dev/skywalking/apache-skywalking-apm-bin/bin
    1.2 ./startup.sh
    1.3 http://127.0.0.1:8080/
    SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_04
    这里有一点,需要注意,skywalking要对springcloudgateway支持,需要添加个插件SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_05
    SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_06
    SpringCloud gateway + Nacos+ Skywalking 研究展示_java_07


​如何使用SkyWalking​

Java Agent 服务器探针
探针,用来收集和发送数据到归集器。
参考官网给出的帮助 Setup java agent,我们需要使用官方提供的探针为我们达到监控的目的,按照实际情况我们需要实现三种部署方式
1.IDEA 部署探针
2.Java 启动方式部署探针(我们是 Spring Boot 应用程序,需要使用 java -jar 的方式启动应用)
3.Docker 启动方式部署探针

我的使用是在IDEA 部署探针

SpringCloud gateway + Nacos+ Skywalking 研究展示_spring_08

-javaagent:/Users/ws/dev/skywalking/apache-skywalking-apm-bin/agent/skywalking-agent.jar
SW_AGENT_NAME=gateway

3. spring cloud gateway+nacos 动态路由

1.nacos监控动态更新配置中心文件变化情况:

SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_09

2.配置注册和服务发现:

SpringCloud gateway + Nacos+ Skywalking 研究展示_java_10

3.nacos配置中心文件配置:

SpringCloud gateway + Nacos+ Skywalking 研究展示_spring_11

4. 效果展示:

所有请求经过网关,全链路追踪

SpringCloud gateway + Nacos+ Skywalking 研究展示_spring_12

SpringCloud gateway + Nacos+ Skywalking 研究展示_官网_13

这里只是说明一下,这样是可以实现,能走的通的。 代码暂时没有提交,仅做参考。