日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Cloud实战小贴士:随机端口

發布時間:2024/7/5 javascript 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cloud实战小贴士:随机端口 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

太久沒有更新,一時不知道該從哪兒開始,索性就從一個小技巧開始吧。

在之前的《Spring Cloud構建微服務架構》系列博文中,我們經常會需要啟動多個實例的情況來測試注冊中心、配置中心等基礎設施的高可用,也會用來測試客戶端負載均衡的調用等。但是,我們一個應用只能有一個端口號,這就使得在本機測試的時候,不得不為同一個服務設置不同的端口來進行啟動。

在本地用不同端口啟動同一服務實例的方法有很多。最傳統的我們可以粗暴地修改配置文件中的server.port屬性來分別啟動多個實例,這種方法雖然可以實現,但是非常的不方便。比較好的一種方法是在啟動的時候通過命令的方式為server.port屬性來設置不同的值,這樣我們的配置文件就不用反復的進行修改了。

在本文中,我們將介紹另外一種方法:采用隨機端口的方式來設置各個服務實例,這樣我們不用去編輯任何命令就可以在本地輕松地啟動多個實例了。

使用隨機端口

為Spring Cloud的應用實用隨機端口非常簡單,主要有兩種方法:

  • 設置server.port=0,當應用啟動的時候會自動的分配一個隨機端口,但是該方式在注冊到Eureka的時候會一個問題:所有實例都使用了同樣的實例名(如:Lenovo-zhaiyc:hello-service:0),這導致只出現了一個實例。所以,我們還需要修改實例ID的定義,讓每個實例的ID不同,比如使用隨機數來配置實例ID:
server.port=0
eureka.instance.instance-id=${spring.application.name}:${random.int}
  • 除了上面的方法,實際上我們還可以直接使用random函數來配置server.port。這樣就可以指定端口的取值范圍,比如:
server.port=${random.int[10000,19999]}

由于默認的實例ID會由server.port拼接,而此時server.port設置的隨機值會重新取一次隨機數,所以使用這種方法的時候不需要重新定義實例ID的規則就能產生不同的實例ID了。


總結

以上是生活随笔為你收集整理的Spring Cloud实战小贴士:随机端口的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。