您好,登錄后才能下訂單哦!
之前我們有介紹通過Spring Boot Admin來檢測服務的上下線,然后進行通知功能。
https://www.jb51.net/article/130943.htm
今天為大家介紹另外一種實現的方式,在Eureka服務中進行檢測通知,Eureka中提供了事件監聽的方式來支持擴展。
import com.netflix.appinfo.InstanceInfo; import org.springframework.cloud.netflix.eureka.server.event.*; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Component; /** * Eureka事件監聽 * * @author yinjihuan * @create 2018-03-09 13:45 **/ @Component public class EurekaStateChangeListener { @EventListener public void listen(EurekaInstanceCanceledEvent event) { System.err.println(event.getServerId() + "\t" + event.getAppName() + " 服務下線"); } @EventListener public void listen(EurekaInstanceRegisteredEvent event) { InstanceInfo instanceInfo = event.getInstanceInfo(); System.err.println(instanceInfo.getAppName() + "進行注冊"); } @EventListener public void listen(EurekaInstanceRenewedEvent event) { System.err.println(event.getServerId() + "\t" + event.getAppName() + " 服務進行續約"); } @EventListener public void listen(EurekaRegistryAvailableEvent event) { System.err.println("注冊中心 啟動"); } @EventListener public void listen(EurekaServerStartedEvent event) { System.err.println("Eureka Server 啟動"); } }
上面只是演示事件的效果,具體在什么事件中需要做什么操作,需要發郵件還是發短信,需要大家自己去實現。
注意:在Eureka集群環境下,每個節點都會觸發事件,這個時候需要控制下發送通知的行為,不控制的話每個節點都會發送通知。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。