欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:云原生 eureka技術(shù)分享

柚子快報激活碼778899分享:云原生 eureka技術(shù)分享

http://yzkb.51969.com/

EnableEurekaServer : 激活Eureka Server端配置

2、服務注冊中心管理后臺

打開瀏覽器訪問http://localhost8761即可進入EurekaServer內(nèi)置的管理控制臺,顯示效果如下

四、服務注冊到Eureka注冊中心

1、商品服務注冊

(1) 商品模塊中引入坐標

在 shop_service_product 的pom文件中添加eureka client的相關(guān)坐標

org.springframework.cloud

spring-cloud-starter-netflix-eureka-client

(2) 配置application.yml文件

在工程的 application.yml 中添加Eureka Server的主機地址

eureka:

client:

serviceUrl: # eureka server的路徑

defaultZone: http://localhost:8761/eureka/

instance:

prefer-ip-address: true #使用ip注冊

(3) 修改啟動類添加服務注冊注解

@SpringBootApplication

//@EnableDiscoveryClient

//@EnableEurekaClient

public class OrderApplication {

public static void main(String[] args) {

SpringApplication.run(OrderApplication.class, args);

}

}

從Spring Cloud Edgware版本開始, @EnableDiscoveryClient 或 @EnableEurekaClient 可省略。只需加上相關(guān)依賴,并進行相應配置,即可將微服務注冊到服務發(fā)現(xiàn)組件上。

2、訂單服務注冊

和商品微服務一樣,只需要引入坐標依賴,在工程的 application.yml 中添加Eureka Server的主機地址即可

(1) 訂單模塊中引入坐標

在 shop_service_product 的pom文件中添加eureka client的相關(guān)坐標

org.springframework.cloud

spring-cloud-starter-netflix-eureka-client

(2) 配置application.yml文件

在工程的 application.yml 中添加Eureka Server的主機地址

eureka:

client:

serviceUrl: # eureka server的路徑

defaultZone: http://localhost:8761/eureka/

instance:

prefer-ip-address: true #使用ip注冊

(3) 修改啟動類添加服務注冊注解

@SpringBootApplication

//@EnableDiscoveryClient

//@EnableEurekaClient

public class OrderApplication {

public static void main(String[] args) {

SpringApplication.run(OrderApplication.class, args);

}

}

從Spring Cloud Edgware版本開始, @EnableDiscoveryClient 或 @EnableEurekaClient 可省略。只需加上相關(guān)依賴,并進行相應配置,即可將微服務注冊到服務發(fā)現(xiàn)組件上。

五、Eureka中的自我保護

微服務第一次注冊成功之后,每30秒會發(fā)送一次心跳將服務的實例信息注冊到注冊中心。通知 Eureka Server 該實例仍然存在。如果超過90秒沒有發(fā)送更新,則服務器將從注冊信息中將此服務移除。

Eureka Server在運行期間,會統(tǒng)計心跳失敗的比例在15分鐘之內(nèi)是否低于85%,如果出現(xiàn)低于的情況(在單機調(diào)試的時候很容易滿足,實際在生產(chǎn)環(huán)境上通常是由于網(wǎng)絡不穩(wěn)定導致),Eureka Server會將當前的實例注冊信息保護起來,同時提示這個警告。保護模式主要用于一組客戶端和Eureka Server之間存在網(wǎng)絡分區(qū)場景下的保護。一旦進入保護模式,Eureka Server將會嘗試保護其服務注冊表中的信息,不再刪除服務注冊表中的數(shù)據(jù)(也就是不會注銷任何微服務)驗證完自我保護機制開啟后,并不會馬上呈現(xiàn)到web上,而是默認需等待 5 分鐘(可以通eureka.server.wait-time-in-ms-when-sync-empty 配置),即 5 分鐘后你會看到下面的提示信息:

如果關(guān)閉自我保護

通過設(shè)置 eureka.enableSelfPreservation=false 來關(guān)閉自我保護功能。

六、Eureka中的元數(shù)據(jù)

Eureka的元數(shù)據(jù)有兩種:標準元數(shù)據(jù)和自定義元數(shù)據(jù)。

標準元數(shù)據(jù):主機名、IP地址、端口號、狀態(tài)頁和健康檢查等信息,這些信息都會被發(fā)布在服務注冊表中,用于服務之間的調(diào)用。 自定義元數(shù)據(jù):可以使用eureka.instance.metadata-map配置,符合KEY/VALUE的存儲格式。這些元數(shù)據(jù)可以在遠程客戶端中訪問。

在程序中可以使用DiscoveryClient 獲取指定微服務的所有元數(shù)據(jù)信息

@SpringBootTest

@RunWith(SpringJUnit4ClassRunner.class)

public class RestTemplateTest {

@Autowired

private DiscoveryClient discoveryClient;

@Test

public void test() {

//根據(jù)微服務名稱從注冊中心獲取相關(guān)的元數(shù)據(jù)信息

List instances = discoveryClient.getInstances(“shop-service-product”);

for (ServiceInstance instance : instances) {

System.out.println(instance);

}

}

}

七、Eureka高可用集群

Eureka Client會定時連接Eureka Server,獲取注冊表中的信息并緩存到本地。微服務在消費遠程API時總是使用本地緩存中的數(shù)據(jù)。因此一般來說,即使Eureka Server發(fā)生宕機,也不會影響到服務之間的調(diào)用。但如果Eureka Server宕機時,某些微服務也出現(xiàn)了不可用的情況,Eureka Server中的緩存若不被刷新,就可能會影響到微服務的調(diào)用,甚至影響到整個應用系統(tǒng)的高可用。因此,在生成環(huán)境中,通常會部署一個高可用的Eureka Server集群。

Eureka Server可以通過運行多個實例并相互注冊的方式實現(xiàn)高可用部署,Eureka Server實例會彼此增量地同步信息,從而確保所有節(jié)點數(shù)據(jù)一致。事實上,節(jié)點之間相互注冊是Eureka Server的默認行為。

1、搭建 Eureka Server高可用集群

1、修改本機host屬性

127.0.0.1 eureka1

127.0.0.1 eureka2

2、修改 shop_eureka_server 工程中的yml配置文件,添加如下配置屬性

#指定應用名稱

spring:

application:

name: shop-eureka-server

#執(zhí)行peer1的配置信息

spring:

profiles: eureka1

server:

port: 8761

eureka:

instance:

hostname: eureka1

client:

service-url:

defaultZone: http://eureka2:8762/eureka

#執(zhí)行peer2的配置信息

spring:

profiles: eureka2

server:

port: 8762

eureka:

instance:

hostname: eureka2

client:

service-url:

defaultZone: http://eureka1:8761/eureka

在配置文件中通過連字符(—)將文件分為三個部分,第一部分為應用名稱,第二部分和第三部分是根據(jù)不同的profiles選項動態(tài)添加,可以在IDEA啟動時進行激活配置

使用IDEA啟動歷次EurekaServerApplicaion分別激活eureka1和eureka2配置。訪問http://eureka1:8761和http://eureka1:8762/。會發(fā)現(xiàn)注冊中心 SHOP-EUREKA-SERVER 已經(jīng)有兩個節(jié)點,并且registered-replicas (相鄰集群復制節(jié)點)中已經(jīng)包含對方。

2、服務注冊到Eureka Server集群

如果需要將微服務注冊到Eureka Server集群只需要修改yml配置文件即可

eureka:

client:

serviceUrl:

defaultZone: http://eureka1:8761/eureka/,http://eureka1:8761/eureka/

以商品微服務為例,修改defaultZone配置添加多個Eureka Server的地址

八、Eureka中的常見問題

1、服務注冊慢

默認情況下,服務注冊到Eureka Server的過程較慢。SpringCloud官方文檔中給出了詳細的原因

大致含義:服務的注冊涉及到心跳,默認心跳間隔為30s。在實例、服務器、客戶端都在本地緩存中具有相同的元數(shù)據(jù)之前,服務不可用于客戶端發(fā)現(xiàn)(所以可能需要3次心跳)。可以通過配置eureka.instance.leaseRenewalIntervalInSeconds (心跳頻率)加快客戶端連接到其他服務的過程。在生產(chǎn)中,最好堅持使用默認值,因為在服務器內(nèi)部有一些計算,他們對續(xù)約做出假設(shè)。

2、服務節(jié)點剔除問題

默認情況下,由于Eureka Server剔除失效服務間隔時間為90s且存在自我保護的機制。所以不能有效而迅速的剔除失效節(jié)點,這對開發(fā)或測試會造成困擾。解決方案如下:

Eureka Server:

配置關(guān)閉自我保護,設(shè)置剔除無效節(jié)點的時間間隔

eureka:

instance:

hostname: eureka1

client:

service-url:

defaultZone: http://eureka2:8762/eureka

server:

enable-self-preservation: false #關(guān)閉自我保護

eviction-interval-timer-in-ms: 4000 #剔除時間間隔,單位:毫秒

Eureka Client:

配置開啟健康檢查,并設(shè)置續(xù)約時間

eureka:

client:

healthcheck: true #開啟健康檢查(依賴spring-boot-actuator)

serviceUrl:

defaultZone: http://eureka1:8761/eureka/,http://eureka1:8761/eureka/

instance:

preferIpAddress: true

lease-expiration-duration-in-seconds: 10 #eureka client發(fā)送心跳給server端后,續(xù)約到期時間(默認90秒)

lease-renewal-interval-in-seconds: 5 #發(fā)送心跳續(xù)約間隔

3、監(jiān)控頁面顯示ip

在Eureka Server的管控臺中,顯示的服務實例名稱默認情況下是微服務定義的名稱和端口。為了更好的對所有服務進行定位,微服務注冊到Eureka Server的時候可以手動配置示例ID。配置方式如下:

eureka:

instance:

instance-id:

s

p

r

i

n

g

.

c

l

o

u

d

.

c

l

i

e

n

t

.

i

p

?

a

d

d

r

e

s

s

:

{spring.cloud.client.ip-address}:

spring.cloud.client.ip?address:{server.port}

#spring.cloud.client.ip-address:獲取ip地址

九、Eureka配置合集

1、Eureka Server常用配置

eureka:

server:

#服務端開啟自我保護模式

enable-self-preservation: true

#掃描失效服務的間隔時間(單位毫秒,默認是60*1000)即60秒

eviction-interval-timer-in-ms: 60000

#間隔多長時間,清除過期的 delta 數(shù)據(jù)

delta-retention-timer-interval-in-ms: 0

#是否開啟請求頻率限制器

rate-limiter-enabled: false

#請求頻率限制器

rate-limiter-burst-size: 10

#請求頻率的平均值

rate-limiter-full-fetch-average-rate: 100

#是否對標準的client進行頻率請求限制。如果是false,則只對非標準client進行限制

rate-limiter-throttle-standard-clients: false

#注冊服務、拉取服務列表數(shù)據(jù)的請求頻率的平均值

rate-limiter-registry-fetch-average-rate: 500

#設(shè)置信任的client list

rate-limiter-privileged-clients: Collections.emptySet()

#在設(shè)置的時間范圍類,期望與client續(xù)約的百分比。

renewal-percent-threshold: 0.85

#多長時間更新續(xù)約的閾值

renewal-threshold-update-interval-ms: 900000

#對于緩存的注冊數(shù)據(jù),多長時間過期

response-cache-auto-expiration-in-seconds: 180

#多長時間更新一次緩存中的服務注冊數(shù)據(jù)

response-cache-update-interval-ms: 30000

#緩存增量數(shù)據(jù)的時間,以便在檢索的時候不丟失信息

retention-time-in-m-s-in-delta-queue: 180000

#當時間戳不一致的時候,是否進行同步

sync-when-timestamp-differs: true

#是否采用只讀緩存策略,只讀策略對于緩存的數(shù)據(jù)不會過期。

use-read-only-response-cache: true

#============== server node 與 node 之間關(guān)聯(lián)的配置 ==============#

#發(fā)送復制數(shù)據(jù)是否在request中,總是壓縮

enable-replicated-request-compression: false

#指示群集節(jié)點之間的復制是否應批處理以提高網(wǎng)絡效率。

batch-replication: false

#允許備份到備份池的最大復制事件數(shù)量。而這個備份池負責除狀態(tài)更新的其他事件。可以根據(jù)內(nèi)存大小,超時和復制流量,來設(shè)置此值得大小

max-elements-in-peer-replication-pool: 10000

#允許備份到狀態(tài)備份池的最大復制事件數(shù)量

max-elements-in-status-replication-pool: 10000

#多個服務中心相互同步信息線程的最大空閑時間

max-idle-thread-age-in-minutes-for-peer-replication: 15

#狀態(tài)同步線程的最大空閑時間

max-idle-thread-in-minutes-age-for-status-replication: 15

#服務注冊中心各個instance相互復制數(shù)據(jù)的最大線程數(shù)量

max-threads-for-peer-replication: 20

#服務注冊中心各個instance相互復制狀態(tài)數(shù)據(jù)的最大線程數(shù)量

max-threads-for-status-replication: 1

#instance之間復制數(shù)據(jù)的通信時長

max-time-for-replication: 30000

#正常的對等服務instance最小數(shù)量。-1表示服務中心為單節(jié)點。

min-available-instances-for-peer-replication: -1

#instance之間相互復制開啟的最小線程數(shù)量

min-threads-for-peer-replication: 5

#instance之間用于狀態(tài)復制,開啟的最小線程數(shù)量

min-threads-for-status-replication: 1

#instance之間復制數(shù)據(jù)時可以重試的次數(shù)

number-of-replication-retries: 5

#eureka節(jié)點間間隔多長時間更新一次數(shù)據(jù)。默認10分鐘。

peer-eureka-nodes-update-interval-ms: 600000

#eureka服務狀態(tài)的相互更新的時間間隔。

peer-eureka-status-refresh-time-interval-ms: 0

#eureka對等節(jié)點間連接超時時間

peer-node-connect-timeout-ms: 200

#eureka對等節(jié)點連接后的空閑時間

peer-node-connection-idle-timeout-seconds: 30

#節(jié)點間的讀數(shù)據(jù)連接超時時間

peer-node-read-timeout-ms: 200

#eureka server 節(jié)點間連接的總共最大數(shù)量

peer-node-total-connections: 1000

#eureka server 節(jié)點間連接的單機最大數(shù)量

peer-node-total-connections-per-host: 10

#在服務節(jié)點啟動時,eureka嘗試獲取注冊信息的次數(shù)

registry-sync-retries: 0

#在服務節(jié)點啟動時,eureka多次嘗試獲取注冊信息的間隔時間

registry-sync-retry-wait-ms:

#當eureka server啟動的時候,不能從對等節(jié)點獲取instance注冊信息的情況,應等待多長時間。

wait-time-in-ms-when-sync-empty: 0

2、Eureka Client 常用配置

eureka:

client:

#該客戶端是否可用

enabled: true

#實例是否在eureka服務器上注冊自己的信息以供其他服務發(fā)現(xiàn),默認為true

register-with-eureka: false

#此客戶端是否獲取eureka服務器注冊表上的注冊信息,默認為true

fetch-registry: false

#是否過濾掉,非UP的實例。默認為true

filter-only-up-instances: true

#與Eureka注冊服務中心的通信zone和url地址

service-url:

defaultZone: http://

e

u

r

e

k

a

.

i

n

s

t

a

n

c

e

.

h

o

s

t

n

a

m

e

:

{eureka.instance.hostname}:

eureka.instance.hostname:{server.port}/eureka/

#client連接Eureka服務端后的空閑等待時間,默認為30 秒

eureka-connection-idle-timeout-seconds: 30

#client連接eureka服務端的連接超時時間,默認為5秒

eureka-server-connect-timeout-seconds: 5

#client對服務端的讀超時時長

eureka-server-read-timeout-seconds: 8

#client連接all eureka服務端的總連接數(shù),默認200

eureka-server-total-connections: 200

#client連接eureka服務端的單機連接數(shù)量,默認50

eureka-server-total-connections-per-host: 50

#執(zhí)行程序指數(shù)回退刷新的相關(guān)屬性,是重試延遲的最大倍數(shù)值,默認為10

cache-refresh-executor-exponential-back-off-bound: 10

#執(zhí)行程序緩存刷新線程池的大小,默認為5

cache-refresh-executor-thread-pool-size: 2

#心跳執(zhí)行程序回退相關(guān)的屬性,是重試延遲的最大倍數(shù)值,默認為10

heartbeat-executor-exponential-back-off-bound: 10

#心跳執(zhí)行程序線程池的大小,默認為5

heartbeat-executor-thread-pool-size: 5

詢問Eureka服務url信息變化的頻率(s),默認為300秒

eureka-service-url-poll-interval-seconds: 300

#最初復制實例信息到eureka服務器所需的時間(s),默認為40秒

initial-instance-info-replication-interval-seconds: 40

#間隔多長時間再次復制實例信息到eureka服務器,默認為30秒

instance-info-replication-interval-seconds: 30

#從eureka服務器注冊表中獲取注冊信息的時間間隔(s),默認為30秒

registry-fetch-interval-seconds: 30

獲取實例所在的地區(qū)。默認為us-east-1

region: us-east-1

#實例是否使用同一zone里的eureka服務器,默認為true,理想狀態(tài)下,eureka客戶端與服務端是在同一zone下

prefer-same-zone-eureka: true

獲取實例所在的地區(qū)下可用性的區(qū)域列表,用逗號隔開。(AWS)

availability-zones:

china: defaultZone,defaultZone1,defaultZone2

#eureka服務注冊表信息里的以逗號隔開的地區(qū)名單,如果不這樣返回這些地區(qū)名單,則客戶端啟動將會出錯。默認為null

fetch-remote-regions-registry:

#服務器是否能夠重定向客戶端請求到備份服務器。 如果設(shè)置為false,服務器將直接處理請求,如果設(shè)置為true,它可能發(fā)送HTTP重定向到客戶端。默認為false

allow-redirects: false

#客戶端數(shù)據(jù)接收

client-data-accept:

#增量信息是否可以提供給客戶端看,默認為false

disable-delta: false

#eureka服務器序列化/反序列化的信息中獲取“_”符號的的替換字符串。默認為“__“

escape-char-replacement: __

#eureka服務器序列化/反序列化的信息中獲取“$”符號的替換字符串。默認為“_-”

dollar-replacement: “_-”

#當服務端支持壓縮的情況下,是否支持從服務端獲取的信息進行壓縮。默認為true

g-zip-content: true

#是否記錄eureka服務器和客戶端之間在注冊表的信息方面的差異,默認為false

log-delta-diff: false

最后

自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。

深知大多數(shù)Java工程師,想要提升技能,往往是自己摸索成長,自己不成體系的自學效果低效漫長且無助。

因此收集整理了一份《2024年Java開發(fā)全套學習資料》,初衷也很簡單,就是希望能夠幫助到想自學提升又不知道該從何學起的朋友,同時減輕大家的負擔。

既有適合小白學習的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗的小伙伴深入學習提升的進階課程,基本涵蓋了95%以上Java開發(fā)知識點,不論你是剛?cè)腴TAndroid開發(fā)的新手,還是希望在技術(shù)上不斷提升的資深開發(fā)者,這些資料都將為你打開新的學習之門!

如果你覺得這些內(nèi)容對你有幫助,需要這份全套學習資料的朋友可以戳我獲取??!

由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學習筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且會持續(xù)更新! 的替換字符串。默認為“__“

escape-char-replacement: __

#eureka服務器序列化/反序列化的信息中獲取“$”符號的替換字符串。默認為“_-”

dollar-replacement: “_-”

#當服務端支持壓縮的情況下,是否支持從服務端獲取的信息進行壓縮。默認為true

g-zip-content: true

#是否記錄eureka服務器和客戶端之間在注冊表的信息方面的差異,默認為false

log-delta-diff: false

最后

自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。

深知大多數(shù)Java工程師,想要提升技能,往往是自己摸索成長,自己不成體系的自學效果低效漫長且無助。

因此收集整理了一份《2024年Java開發(fā)全套學習資料》,初衷也很簡單,就是希望能夠幫助到想自學提升又不知道該從何學起的朋友,同時減輕大家的負擔。

[外鏈圖片轉(zhuǎn)存中…(img-mFnc2FdU-1715305990769)]

[外鏈圖片轉(zhuǎn)存中…(img-a1tMrwJQ-1715305990769)]

[外鏈圖片轉(zhuǎn)存中…(img-OMJdrnTI-1715305990770)]

既有適合小白學習的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗的小伙伴深入學習提升的進階課程,基本涵蓋了95%以上Java開發(fā)知識點,不論你是剛?cè)腴TAndroid開發(fā)的新手,還是希望在技術(shù)上不斷提升的資深開發(fā)者,這些資料都將為你打開新的學習之門!

如果你覺得這些內(nèi)容對你有幫助,需要這份全套學習資料的朋友可以戳我獲?。?!

由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學習筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且會持續(xù)更新!

柚子快報激活碼778899分享:云原生 eureka技術(shù)分享

http://yzkb.51969.com/

參考閱讀

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19236253.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機訪問

文章目錄