Sentinel 的使用能夠分爲核心庫和控制檯兩個部分。
核心庫不依賴任何框架/庫,集成了主流框架,能夠進行單機限流降級等功能,
控制檯Dashboard提供了可視化的管理限流規則、對集羣進行監控,集羣限流分配管理、機器發現等功能。html
這篇博客學習 Sentinel 控制檯的啓動和接入。java
控制檯下載有兩種方式,一種是直接下載編譯好的release版本程序包,另外一種是下載控制檯的工程代碼,在本地打包後啓動。git
從 release 頁面下載最新版本的控制檯 jar 包。github
最新的正式版本是v1.7.1。spring
下載最新的 sentinel-dashboard 控制檯工程,代碼倉庫地址 sentinel-dashboard。segmentfault
下載後,進入工程目錄,經過Maven打包成一個可執行的 fat jar:session
mvn clean package
架構
使用以下命令啓動控制檯:框架
java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar
注意:啓動 Sentinel 控制檯須要 JDK 版本爲 1.8 及以上版本。學習
其中,
-Dserver.port=8080 用於指定 Sentinel 控制檯端口爲 8080
-Dcsp.sentinel.dashboard.server 用於控制檯對外暴露的服務地址
從 Sentinel 1.6.0 起,Sentinel 控制檯引入基本的登陸功能,默認用戶名和密碼都是 sentinel。
若是須要自行配置,能夠經過以下參數進行調整:
-Dsentinel.dashboard.auth.username=sentinel 用於指定控制檯的登陸用戶名爲 sentinel;
-Dsentinel.dashboard.auth.password=123456 用於指定控制檯的登陸密碼爲 123456;若是省略這兩個參數,默認用戶和密碼均爲 sentinel;
-Dserver.servlet.session.timeout=7200 用於指定 Spring Boot 服務端 session 的過時時間,如 7200 表示 7200 秒;60m 表示 60 分鐘,默認爲 30 分鐘;
控制檯啓動後,訪問 localhost:8080,能夠查看控制檯。
這裏我使用 spring.io 建立一個Spring Boot項目來進行演示,工程搭建步驟能夠參考
十分鐘快速建立 Spring Cloud 項目
客戶端須要引入 Transport 模塊來與 Sentinel 控制檯進行通訊。須要在 pom.xml 引入 JAR 包:
<dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-transport-simple-http</artifactId> <version>1.7.1</version> </dependency>
引入依賴後,在應用啓動時須要添加,指定控制檯地址和端口,能夠經過添加啓動JVM參數
或者配置文件兩種方式。
啓動時加入 JVM 參數 -Dcsp.sentinel.dashboard.server=consoleIp:port。
這裏我把啓動參數添加在Idea Configuration下的VM options中:-Dcsp.sentinel.dashboard.server=192.168.43.120:8080
)
這裏我使用的是yaml方式,
完成配置後,啓動應用,刷新控制檯,可在 Sentinel 控制檯上看到對應的應用,機器列表頁面能夠看到對應的機器,後面教程會對 Sentinel 控制檯功能和應用進行詳細的解析
關注公衆號:架構進化論,得到第一手的技術資訊和原創文章