日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

將應(yīng)用的服務(wù)注冊(cè)與發(fā)現(xiàn)中心更改為Nacos

更新時(shí)間:

本文以包含服務(wù)提供者(Provider)和服務(wù)消費(fèi)者(Consumer)的Spring Cloud微服務(wù)應(yīng)用為例,指導(dǎo)您將原依賴Eureka、Consul、ZooKeeper等組件實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)的應(yīng)用,更改為使用Nacos作為服務(wù)注冊(cè)與發(fā)現(xiàn)中心,并部署到SAE

前提條件

  1. 下載并解壓Nacos Server。

  2. 進(jìn)入nacos/bin目錄,啟動(dòng)Nacos Server。

    • Linux、Unix、macOS系統(tǒng):執(zhí)行命令sudo sh startup.sh -m standalone

    • Windows系統(tǒng):執(zhí)行命令startup.cmd -m standalone。

    說(shuō)明

    standalone表示單機(jī)模式運(yùn)行,非集群模式。startup.cmd文件默認(rèn)以集群模式啟動(dòng),因此您在使用Windows系統(tǒng)時(shí),如果直接雙擊執(zhí)行startup.cmd文件會(huì)導(dǎo)致啟動(dòng)失敗,此時(shí)需要在startup.cmd文件內(nèi)設(shè)置MODE="standalone"。 更多信息,請(qǐng)參見(jiàn)Nacos快速開(kāi)始

為什么托管到SAE

原依賴Eureka、Consul、ZooKeeper和Redis等組件實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)的Spring Cloud應(yīng)用,如果需要部署至SAE,僅需將原服務(wù)注冊(cè)與發(fā)現(xiàn)中心和配置中心替換為Alibaba Nacos Discovery,無(wú)需修改任何業(yè)務(wù)代碼。

SAE服務(wù)注冊(cè)中心具有Spring Cloud Alibaba Nacos Discovery所有功能,SAE服務(wù)注冊(cè)中心可以完全代替Eureka、Consul、ZooKeeper和Redis等,作為您微服務(wù)應(yīng)用的服務(wù)注冊(cè)中心。

將Spring Cloud應(yīng)用托管到SAE,您僅需關(guān)注Spring Cloud應(yīng)用自身的邏輯,無(wú)需再關(guān)注注冊(cè)中心和配置中心的搭建和維護(hù),托管后還可以使用SAE提供的彈性伸縮、一鍵批量啟停、應(yīng)用監(jiān)控等功能,大幅度降低開(kāi)發(fā)和運(yùn)維成本。

當(dāng)您的微服務(wù)應(yīng)用較多時(shí),注冊(cè)中心按推薦程度由高到低依次排序如下。

  • 商業(yè)版的服務(wù)注冊(cè)中心(MSE)

    bt_use_mse_nacos_in_service_registration_and_discovery

    搭建并部署商業(yè)版的服務(wù)注冊(cè)中心(使用MSE的Nacos作為服務(wù)注冊(cè)中心)的具體操作,請(qǐng)參見(jiàn)使用MSE的Nacos注冊(cè)中心。

  • 自建服務(wù)注冊(cè)中心

    bt_use_user_created_nacos_in_service_registration_and_discovery

    搭建并部署自建Nacos注冊(cè)中心時(shí),您需要確認(rèn)以下內(nèi)容。

    • 確保SAE的網(wǎng)絡(luò)與自建Nacos的網(wǎng)絡(luò)互通。

    • 確保-D-XX參數(shù)未交替使用,以免命令失效。示例代碼如下:

      • 修改前:

        java -Dalicloud.deployment.mode=EDAS_MANAGED -XX:+UseContainerSupport -XX:InitialRAMPercentage=70.0 -XX:MaxRAMPercentage=70.0 -XX:+UnlockExperimentalVMOptions -XX:+UseWisp2 -Dio.netty.transport.noNative=true -XX:+UseG1GC -Dspring.profiles.active=yace -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar /home/admin/app/xx-server.jar
      • 修改后:

        java -XX:+UseContainerSupport -XX:InitialRAMPercentage=70.0 -XX:MaxRAMPercentage=70.0 -XX:+UnlockExperimentalVMOptions -XX:+UseWisp2 -Dio.netty.transport.noNative=true -XX:+UseG1GC -Dspring.profiles.active=yace -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar /home/admin/app/xx-server.jar
    • 建議在部署應(yīng)用時(shí),使用鏡像或者JAR包方式,并配置啟動(dòng)參數(shù)-Dnacos.use.endpoint.parsing.rule=false-Dnacos.use.cloud.namespace.parsing=false

      重要

      啟動(dòng)參數(shù)需要放在-jar之前,否則可能會(huì)導(dǎo)致無(wú)法使用非SAE自帶的注冊(cè)中心。

      • 如果采用鏡像方式,請(qǐng)將-Dnacos.use.endpoint.parsing.rule=false-Dnacos.use.cloud.namespace.parsing=false配置在鏡像文件的程序啟動(dòng)命令中。Docker鏡像制作方法,請(qǐng)參見(jiàn)制作Java鏡像

        示例代碼如下:

        RUN echo 'eval exec java -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar $CATALINA_OPTS /home/admin/app/hello-edas-0.0.1-SNAPSHOT.jar'> /home/admin/start.sh && chmod +x /home/admin/start.sh
      • 如果采用JAR包方式,請(qǐng)?jiān)诳刂婆_(tái)啟動(dòng)命令設(shè)置區(qū)域的options設(shè)置文本框輸入-Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false。圖示為Open JDK 8運(yùn)行環(huán)境下的Java應(yīng)用。具體操作,請(qǐng)參見(jiàn)設(shè)置啟動(dòng)命令sc_configure_a_startup_command_for_nacos

  • SAE內(nèi)置服務(wù)注冊(cè)中心

    sc_sae_service_registration_and_discovery

    SAE提供Java微服務(wù)自動(dòng)尋址的Nacos Server能力,您可以通過(guò)SAE服務(wù)注冊(cè)發(fā)現(xiàn)功能配置。具體操作,請(qǐng)參見(jiàn)使用SAE內(nèi)置Nacos。

步驟一:獲取Demo

eureka-service-provider和eureka-service-consumer是SAE提供的微服務(wù)Demo應(yīng)用程序包,二者均為已經(jīng)接入Eureka的Spring Cloud應(yīng)用。Consumer應(yīng)用消費(fèi)Provider應(yīng)用提供的服務(wù)。

步驟二:修改Provider應(yīng)用的服務(wù)注冊(cè)與發(fā)現(xiàn)配置

將云原生的Provider應(yīng)用托管到SAE中,需要在應(yīng)用程序中修改pom依賴,并指定Nacos Server的IP地址。

說(shuō)明

以下情況需要指定Nacos Server的IP地址:

  • 本地測(cè)試時(shí),本地測(cè)試通過(guò)后再部署到SAE中。

  • SAE的服務(wù)注冊(cè)中心為自建的Nacos。

  1. 添加pom依賴。

    打開(kāi)應(yīng)用的pom.xml文件,將spring-cloud-starter-netflix-eureka-client替換成為spring-cloud-starter-alibaba-nacos-discovery,并設(shè)置Nacos Server的版本信息。

    替換前:

    <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>                            

    替換后:

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        <version>2.1.1.RELEASE</version>
    </dependency>                           
    說(shuō)明
    • 示例中使用的版本是Spring Cloud Greenwich,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為2.1.1.RELEASE。

    • 如果您使用的是Spring Cloud Finchley版本,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為2.0.1.RELEASE。

    • 如果您使用的是Spring Cloud Edgware版本,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為1.5.1.RELEASE。該版本的生命周期已結(jié)束,因此不推薦使用該版本。更多信息,請(qǐng)參見(jiàn)Spring Cloud Edgware Release Notes。

  2. 指定Nacos Server的IP地址。

    打開(kāi)src\main\resources路徑下的application.properties文件,指定Nacos Server的IP地址。

    修改前:

    spring.application.name=service-provider
    server.port=18081
    eureka.client.serviceUrl.defaultZone=http://127.0.0.1:8761/eureka/                            

    修改后:

    spring.application.name=service-provider
    server.port=18081
    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848                            

    其中127.0.0.1為Nacos Server的IP地址。如果Nacos Server部署在其他機(jī)器上,則需要修改為對(duì)應(yīng)的IP地址。如果有其他需求,請(qǐng)參見(jiàn)配置項(xiàng)參考application.properties文件中增加所需配置。

  3. 查詢應(yīng)用服務(wù)。

    1. 執(zhí)行nacos-service-providerProviderApplicationmain函數(shù),啟動(dòng)應(yīng)用。

    2. 登錄本地啟動(dòng)的Nacos Server控制臺(tái)127.0.0.1:8848/nacos,在左側(cè)導(dǎo)航欄中選擇服務(wù)管理 > 服務(wù)列表。

      說(shuō)明

      本地Nacos Server控制臺(tái)的默認(rèn)用戶名和密碼均為nacos。

      如果服務(wù)列表中顯示service-provider,且在詳情中可以查詢?cè)摲?wù)的詳情,那么表示服務(wù)注冊(cè)成功。

步驟三:修改Consumer應(yīng)用的服務(wù)注冊(cè)與發(fā)現(xiàn)配置

將云原生的Consumer應(yīng)用托管到SAE中,需要在應(yīng)用程序中修改pom依賴,并指定Nacos Server的IP地址。

說(shuō)明

以下情況需要指定Nacos Server的IP地址:

  • 本地測(cè)試時(shí),本地測(cè)試通過(guò)后再部署到SAE中。

  • SAE的服務(wù)注冊(cè)中心為自建的Nacos。

  1. 添加pom依賴。

    打開(kāi)應(yīng)用的pom.xml文件,將spring-cloud-starter-netflix-eureka-client替換成為spring-cloud-starter-alibaba-nacos-discovery,并設(shè)置Nacos Server的版本信息。

    替換前:

    <dependency>
       <groupId>org.springframework.cloud</groupId>
       <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>                            

    替換后:

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        <version>2.1.1.RELEASE</version>
    </dependency>                           
    說(shuō)明
    • 示例中使用的版本是Spring Cloud Greenwich,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為2.1.1.RELEASE

    • 如果您使用的是Spring Cloud Finchley版本,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為2.0.1.RELEASE。

    • 如果您使用的是Spring Cloud Edgware版本,對(duì)應(yīng)spring-cloud-starter-alibaba-nacos-discovery的版本為1.5.1.RELEASE。該版本的生命周期已結(jié)束,因此不推薦使用該版本。更多信息,請(qǐng)參見(jiàn)Spring Cloud Edgware Release Notes。

  2. 指定Nacos Server的IP地址。

    打開(kāi)src\main\resources路徑下的application.properties文件,指定Nacos Server的IP地址。

    修改前:

    spring.application.name=service-consumer
    server.port=18082
    eureka.client.serviceUrl.defaultZone=http://127.0.0.1:8761/eureka/                            

    修改后:

    spring.application.name=service-consumer
    server.port=18082
    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848                            

    其中127.0.0.1為Nacos Server的IP地址。如果Nacos Server部署在其他機(jī)器上,則需要修改為對(duì)應(yīng)的IP地址。如果有其他需求,請(qǐng)參見(jiàn)配置項(xiàng)參考application.properties文件中增加所需配置。

  3. 查詢應(yīng)用服務(wù)。

    1. 執(zhí)行nacos-service-consumerConsumerApplicationmain函數(shù),啟動(dòng)應(yīng)用。

    2. 登錄本地啟動(dòng)的Nacos Server控制臺(tái)127.0.0.1:8848/nacos,在左側(cè)導(dǎo)航欄中選擇服務(wù)管理 > 服務(wù)列表。

      說(shuō)明

      本地Nacos Server控制臺(tái)的默認(rèn)用戶名和密碼均為nacos。

      如果服務(wù)列表中顯示service-consumer,且在詳情中可以查詢?cè)摲?wù)的詳情,那么表示服務(wù)注冊(cè)成功。

步驟四:查看Provider與Consumer的調(diào)用結(jié)果

在本地查看Consumer對(duì)Provider的服務(wù)調(diào)用結(jié)果。啟動(dòng)服務(wù),執(zhí)行IP+port/echo-rest/{自定義變量}IP+port/echo-feign/{自定義變量}查看調(diào)用結(jié)果。

  • Linux、Unix、macOS系統(tǒng):執(zhí)行curl http://127.0.0.1:18082/echo-rest/{自定義變量}curl http://127.0.0.1:18082/echo-feign/{自定義變量}。

  • Windows系統(tǒng):在瀏覽器中輸入http://127.0.0.1:18082/echo-rest/{自定義變量}http://127.0.0.1:18082/echo-feign/{自定義變量}。

示例:以Windows系統(tǒng)為例,當(dāng)顯示以下結(jié)果時(shí),表示Provider與Consumer業(yè)務(wù)調(diào)用成功。

結(jié)果驗(yàn)證

步驟五:將應(yīng)用部署到SAE

  1. 在應(yīng)用的pom.xml文件中添加應(yīng)用程序的打包配置,添加完成后執(zhí)行mvn clean package命令將本地的程序編譯成可執(zhí)行的JAR包。

    <build>
         <plugins>
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
                 <executions>
                     <execution>
                         <goals>
                             <goal>repackage</goal>
                         </goals>
                     </execution>
                 </executions>
             </plugin>
         </plugins>
     </build>                        
  2. 將編譯好的Provider和Consumer應(yīng)用包部署至SAE。具體操作,請(qǐng)參見(jiàn)部署微服務(wù)應(yīng)用到SAE。

    重要
    • SAE不支持創(chuàng)建空應(yīng)用,因此第一次部署需在控制臺(tái)完成。

    • 如果使用JAR包部署,在應(yīng)用部署配置時(shí)選擇應(yīng)用運(yùn)行環(huán)境標(biāo)準(zhǔn)Java應(yīng)用運(yùn)行環(huán)境

    • 如果使用WAR包部署,在應(yīng)用部署配置時(shí)應(yīng)用運(yùn)行環(huán)境apache-tomcat-XXX。

    當(dāng)您將應(yīng)用部署到SAE時(shí),SAE服務(wù)注冊(cè)中心以高優(yōu)先級(jí)自動(dòng)設(shè)置Nacos Server服務(wù)端地址和服務(wù)端口,以及命名空間、AccessKey ID、AccessKey Secret等信息,您無(wú)需進(jìn)行任何額外的配置。對(duì)于原有的配置內(nèi)容您可以保留或刪除。

步驟六:結(jié)果驗(yàn)證

  1. 為Consumer應(yīng)用綁定公網(wǎng)CLB,并在瀏覽器鍵入所設(shè)置的公網(wǎng)訪問(wèn)地址,進(jìn)入應(yīng)用首頁(yè)。具體操作,請(qǐng)參見(jiàn)為應(yīng)用綁定CLB

  2. 在應(yīng)用首頁(yè)發(fā)起調(diào)用請(qǐng)求,然后登錄SAE控制臺(tái),在左側(cè)導(dǎo)航欄,選擇應(yīng)用管理 > 應(yīng)用列表在頂部菜單欄,選擇地域。

  3. 應(yīng)用列表頁(yè)面,選擇Consumer應(yīng)用,進(jìn)入基本信息頁(yè)面。

  4. 在左側(cè)導(dǎo)航欄,選擇應(yīng)用監(jiān)控 > 應(yīng)用總覽,查看服務(wù)調(diào)用數(shù)據(jù)總覽。

    如果能夠監(jiān)測(cè)到調(diào)用數(shù)據(jù),則說(shuō)明服務(wù)調(diào)用成功。

配置項(xiàng)參考

配置項(xiàng)

Key

默認(rèn)值

說(shuō)明

服務(wù)端地址

spring.cloud.nacos.discovery.server-addr

無(wú)

Nacos Server啟動(dòng)監(jiān)聽(tīng)的IP地址和端口。

服務(wù)名

spring.cloud.nacos.discovery.service

${spring.application.name}

當(dāng)前服務(wù)的名稱。

網(wǎng)卡名

spring.cloud.nacos.discovery.network-interface

無(wú)

當(dāng)IP地址未配置時(shí),注冊(cè)IP為此網(wǎng)卡所對(duì)應(yīng)的IP地址。如果此項(xiàng)也未配置,則默認(rèn)取第一塊網(wǎng)卡的IP地址。

注冊(cè)的IP地址

spring.cloud.nacos.discovery.ip

無(wú)

高優(yōu)先級(jí)。

注冊(cè)的端口

spring.cloud.nacos.discovery.port

-1

默認(rèn)情況下不用配置,系統(tǒng)會(huì)自動(dòng)探測(cè)。

命名空間

spring.cloud.nacos.discovery.namespace

無(wú)

不同環(huán)境的注冊(cè)邏輯隔離,例如開(kāi)發(fā)測(cè)試環(huán)境和生產(chǎn)環(huán)境的資源(如配置、服務(wù))隔離等。

Metadata

spring.cloud.nacos.discovery.metadata

無(wú)

使用Map格式配置,您可以根據(jù)自己需要自定義和服務(wù)相關(guān)的元數(shù)據(jù)信息。

集群

spring.cloud.nacos.discovery.cluster-name

DEFAULT

配置Nacos集群名稱。

接入點(diǎn)

spring.cloud.nacos.discovery.endpoint

無(wú)

地域的某個(gè)服務(wù)的入口域名,通過(guò)此域名可以動(dòng)態(tài)地獲取服務(wù)端地址,此配置在部署到SAE時(shí)無(wú)需填寫(xiě)。

是否集成Ribbon

ribbon.nacos.enabled

true

如果沒(méi)有明確需求,不需要修改。

更多關(guān)于Spring Cloud Alibaba Nacos Discovery的信息,請(qǐng)參見(jiàn)開(kāi)源版本的Spring Cloud Alibaba Nacos Discovery。

更多信息

SAE部署應(yīng)用完成后,您可以對(duì)應(yīng)用進(jìn)行如下操作。

操作

相關(guān)文檔

更新、擴(kuò)縮容、啟停、刪除應(yīng)用等生命周期管理的操作

管理應(yīng)用生命周期

自動(dòng)彈性伸縮、CLB綁定和批量啟停等提升應(yīng)用性能的操作

日志管理、監(jiān)控管理、應(yīng)用事件查看和變更記錄查看等聚焦應(yīng)用運(yùn)行狀態(tài)的操作