分布式 eureka平滑發布

2021-10-04 18:23:36 字數 1269 閱讀 9432

一.先聊聊eureke的server與client配置

server端:eureka.server.enable-self-preservation//(設為false,關閉自我保護主要)

eureka.server.eviction-interval-timer-in-ms//清理間隔(單位毫秒,預設是60*1000)

client端:eureka.client.healthcheck.enabled = true//開啟健康檢查(需要spring-boot-starter-actuator依賴)

eureka.instance.lease-renewal-interval-in-seconds =10//租期更新時間間隔(預設30秒)

eureka.instance.lease-expiration-duration-in-seconds =30//租期到期

時間(預設90秒)

eureka.client.registry-fetch-interval-seconds 用來指定 eureka client 多久向 eureka server 獲取一次登錄檔資訊

二.client配置

三.發布流程

svc.sh啟動指令碼(部分**)

eureka下線服務(注意:執行請求後,eurake客戶端立即下線,但是流量還會進來,並沒有立即切換到其它機器,so這裡要等待)

eureka上線服務

服務的重啟

整個發布流程是:下線註冊中心服務 → 等待30s(必須比registry-fetch-interval-seconds大) → 執行發布指令碼 → 服務啟動成功 → 上線註冊中心服務 ,從而可以做到平滑發布,經閘道器的鏈路不會受發布影響。(未經註冊中心的服務盡快接入)

下線–等待30s-重啟服務

啟動完自動註冊上線

從發布到發布完的結果:請求未嘗一次失敗

分布式 分布式鎖

本質是利用redis的setnx 方法的特性來加鎖,setnx 即key不存在則設定key,否則直接返回false,要求在分布式系統中使用同乙個redis服務,以下提供兩種解決方案 1 直接使用redistemplate 這其實並不能完全保證高併發下的安全問題,因為可能在鎖過期之後該執行緒尚未執行完...

分布式 分布式事務

是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...

分布式通訊之發布訂閱

由此可以看出,發布訂閱的三要素是生產者 消費者和訊息中心,生產者負責產生資料放到訊息中心,消費者向訊息中心訂閱自己感興趣的訊息,當發布者推送資料到訊息中心後,訊息中心根據消費者訂閱情況將相關資料推送給對應的訂閱者。在分布式通訊領域中,訊息系統一般有兩種典型的模式。一種是點對點模式 p2p,point...