您好,登錄后才能下訂單哦!
本篇內容介紹了“基于springboot怎么構建鏈路調用監控系統”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
spring cloud的開發是基于微服務架構的,因此當整個業務系統開發到了一定階段,我們的微服務可能就會達到幾十個,那么這時候微服務之間的互相調用整個網絡就像蜘蛛網一樣,而且很多蜘蛛網可能是程序員在編寫的時候作為架構師的我們完全不知道的,那么這有可能導致某個版本發布的時候出現嚴重的調用鏈問題,因此我們需要構建一個工程來監控我們的調用鏈路,保證我們的程序上線的時候程序員是按照架構師的設計去開發的而不是自己隨便亂來的。
那么直接在我們的spring-cloud-rbac工程上創建我們的鏈路調用監控系統,如下所示:
在我們的zinpkin工程中的pom.xml文件中加入以下的配置:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.zinpkin</groupId> <artifactId>zinpkin</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>zinpkin</name> <description>鏈路調用監控系統</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka</artifactId> </dependency> <!-- 引入zinpkin 服務--> <dependency> <groupId>io.zipkin.java</groupId> <artifactId>zipkin-server</artifactId> </dependency> <!-- 引入zinpkin 頁面服務--> <dependency> <groupId>io.zipkin.java</groupId> <artifactId>zipkin-autoconfigure-ui</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Edgware.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
接著在我們的主類上開啟我們的zinpkin注解的支持如下所示:
package com.zinpkin; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import zipkin.server.EnableZipkinServer; @SpringBootApplication @EnableEurekaClient @EnableZipkinServer public class ZinpkinApplication { public static void main(String[] args) { SpringApplication.run(ZinpkinApplication.class, args); } }
接著我們在resource中新建一個application-prod.properties配置文件如下所示,同時大家要記得像上一章一樣在我們的啟動項環境配置里加入spring.profiles.active 等于 prod的配置項,否則會導致大家啟動的zinpkin沒有訪問到我們的配置文件:
spring.application.name=zipkin-server server.port=9100 # 注冊中心地址 eureka.client.serviceUrl.defaultZone=http://fjhyll:hyll-2.0@127.0.0.1:2100/eureka/
訪問以下地址:http://127.0.0.1:9100/zipkin/大家可以看到如下所示的效果:
“基于springboot怎么構建鏈路調用監控系統”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。