摘要:提供一個輕量級的開源控制臺,它提供機器發(fā)現(xiàn)以及健康情況管理監(jiān)控單機和集群,規(guī)則管理和推送的功能。比如我們之前是直接在代碼中初始限流的值,接入控制臺后可以直接通過控制臺進行限流參數(shù)的動態(tài)配置,非常方便。
Sentinel 提供一個輕量級的開源控制臺,它提供機器發(fā)現(xiàn)以及健康情況管理、監(jiān)控(單機和集群),規(guī)則管理和推送的功能。
比如我們之前是直接在代碼中初始限流的值,接入控制臺后可以直接通過控制臺進行限流參數(shù)的動態(tài)配置,非常方便。
Sentinel 控制臺最少應(yīng)該包含如下功能:
查看機器列表以及健康情況:收集 Sentinel 客戶端發(fā)送的心跳包,用于判斷機器是否在線。
監(jiān)控 (單機和集群聚合):通過 Sentinel 客戶端暴露的監(jiān)控 API,定期拉取并且聚合應(yīng)用監(jiān)控信息,最終可以實現(xiàn)秒級的實時監(jiān)控。
規(guī)則管理和推送:統(tǒng)一管理推送規(guī)則。
鑒權(quán):生產(chǎn)環(huán)境中鑒權(quán)非常重要。這里每個開發(fā)者需要根據(jù)自己的實際情況進行定制。
部署控制臺需要先下載控制臺的jar包,可以直接從 https://github.com/alibaba/Se... 頁面進行下載,也可以自己下載源碼進行編譯(https://github.com/alibaba/Se...),推薦直接下載編譯好的。
下載之后使用下面的命令啟動即可:
java -Dserver.port=8333 -Dcsp.sentinel.dashboard.server=localhost:8333 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.4.2.jar
-Dserver.port
指定控制臺的端口
-Dcsp.sentinel.dashboard.server
指定控制臺的地址,相當于自己注冊自己,這樣啟動后就能看到自身的信息
-Dproject.name
指定接入的應(yīng)用名稱
啟動后訪問 http://localhost:8333 即可跳轉(zhuǎn)到控制臺的主頁,如下圖:
這個控制臺里面的操作我們就不進行講解了,大家自己去嘗試下就會了,比如說我們要看實時監(jiān)控的數(shù)據(jù),那么就點擊第一個實時監(jiān)控的菜單,可以看到下面的效果:
可以看到每個URI的QPS啊,拒絕的QPS等信息。
客戶端接入控制臺上面其實是把控制臺自己接入進來了,如果要接入我們實際工作中的項目,該怎么接入?
客戶端需要引入 Transport 模塊來與 Sentinel 控制臺進行通信。您可以通過 pom.xml 引入 JAR 包:
com.alibaba.csp sentinel-transport-simple-http 1.4.1
同樣的增加JVM啟動參數(shù)指定控制臺的地址:
-Dcsp.sentinel.dashboard.server=localhost:8333
注:若您的應(yīng)用為 Spring Boot 或 Spring Cloud 應(yīng)用,您可以使用?Spring Cloud Alibaba,通過 Spring 配置文件來指定配置,詳情請參考?Spring Cloud Alibaba Sentinel 文檔?以及?示例。
這個我們后面再進行講解,目前就直接用JVM參數(shù)設(shè)置。
Sentinel 會在客戶端首次調(diào)用的時候進行初始化,開始向控制臺發(fā)送心跳包。然后就可以在控制臺上看到我們自己接入的應(yīng)用了。
可以看到多了一個應(yīng)用,因為我們沒有指定應(yīng)用名,就是默認的啟動類的全稱。
接入之后就可以查看這個應(yīng)用的一些信息了,還可以動態(tài)的修改限流的規(guī)則:
當然這些規(guī)則目前只是存儲在內(nèi)存中,應(yīng)用重啟之后就丟失了,后面我們再學(xué)習(xí)如何持久化這些數(shù)據(jù)。
歡迎加入我的知識星球,一起交流技術(shù),免費學(xué)習(xí)猿天地的課程(http://cxytiandi.com/course) PS:目前星球中正在星主的帶領(lǐng)下組隊學(xué)習(xí)Sentinel,等你哦!文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/73842.html
摘要:介紹隨著微服務(wù)的流行,服務(wù)和服務(wù)之間的穩(wěn)定性變得越來越重要。以流量為切入點,從流量控制熔斷降級系統(tǒng)負載保護等多個維度保護服務(wù)的穩(wěn)定性。完備的實時監(jiān)控同時提供實時的監(jiān)控功能。您只需要引入相應(yīng)的依賴并進行簡單的配置即可快速地接入。 Sentinel 介紹 隨著微服務(wù)的流行,服務(wù)和服務(wù)之間的穩(wěn)定性變得越來越重要。 Sentinel 以流量為切入點,從流量控制、熔斷降級、系統(tǒng)負載保護等多個維度...
摘要:有沒有那么一個框架能夠把熔斷跟限流都給做了,以前沒有,但是現(xiàn)在有了,我這屬于自問自答哈這個框架就是阿里最新開源的。后來我才發(fā)現(xiàn)我錯了,大錯特錯,這是一個新的框架,潛力實力阿里開源。 前言 在 Spring Cloud 體系中,熔斷降級我們會使用 Hystrix 框架,限流通常會在 Zuul 中進行處理,Zuul 中沒有自帶限流的功能,我們可以自己做限流或者集成第三方開源的限流框架。最新...
摘要:現(xiàn)狀分布式場景中。因此要對在原服務(wù)不可用時進行熔斷降級處理。分析熔斷降級可以服務(wù)端限流網(wǎng)關(guān)限流客戶端限流。它提供兩種資源隔離的模式信號量隔離和線程池隔離。支持流控熔斷降級系統(tǒng)保護等。它支持并發(fā)數(shù)的流量控制也支持熔斷降級。 現(xiàn)狀 分布式場景中。若服務(wù)不穩(wěn)定,會導(dǎo)致調(diào)用方服務(wù)也不可用,從而造成雪崩效應(yīng)。因此要對在原服務(wù)不可用時進行熔斷降級處理。 分析 熔斷降級可以服務(wù)端限流、網(wǎng)關(guān)限流、客戶...
摘要:單線程執(zhí)行命令。文件描述符事件。內(nèi)部原因不合理使用或數(shù)據(jù)結(jié)構(gòu)可能由此導(dǎo)致慢查詢等飽和是單線程,只會使用單個持久化阻塞操作產(chǎn)生阻塞,對硬盤的操作產(chǎn)生阻塞或?qū)懖僮髯枞取?nèi)存達到時執(zhí)行內(nèi)存溢出控制策略。 最近在看《Redis開發(fā)與運維》,把自己學(xué)會的知識點記錄下來,畢竟好記性不如爛筆頭。 一.Redis是什么。 Redis是一個Key-Value的NoSQL數(shù)據(jù)庫. 二.Redis的特點。...
閱讀 1602·2021-11-25 09:43
閱讀 4159·2021-11-15 11:37
閱讀 3263·2021-08-17 10:13
閱讀 3572·2019-08-30 14:16
閱讀 3603·2019-08-26 18:37
閱讀 2546·2019-08-26 11:56
閱讀 1213·2019-08-26 10:42
閱讀 700·2019-08-26 10:39