最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nacos簡介最新收藏版

 更新時間:2023年08月08日 10:56:11   作者:shenlbang  
Nacos?是阿里巴巴推出來的一個新開源項目,這是一個更易于構建云原生應用的動態(tài)服務發(fā)現(xiàn)、配置管理和服務管理平臺,Nacos?幫助您更敏捷和容易地構建、交付和管理微服務平臺,對Nacos相關基本知識感興趣的朋友一起看看吧

Nacos簡介

背景:當在微服務項目中不同模塊之間需要實現(xiàn)服務調(diào)用時,如何實現(xiàn)服務注冊與發(fā)現(xiàn)?

1、Nacos概述

1.1 什么是Nacos

Nacos 是阿里巴巴推出來的一個新開源項目,這是一個更易于構建云原生應用的動態(tài)服務發(fā)現(xiàn)、配置管理和服務管理平臺。

Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務。Nacos 提供了一組簡單易用的特性集,幫助您快速實現(xiàn)動態(tài)服務發(fā)現(xiàn)、服務配置、服務元數(shù)據(jù)及流量管理。

Nacos 幫助您更敏捷和容易地構建、交付和管理微服務平臺。 Nacos 是構建以“服務”為中心的現(xiàn)代應用架構 (例如微服務范式、云原生范式) 的服務基礎設施

Nacos 支持如下核心特性:

  • 1)服務發(fā)現(xiàn): 支持 DNS 與 RPC 服務發(fā)現(xiàn),也提供原生 SDK 、OpenAPI 等多種服務注冊方式和 DNS、HTTP 與 API 等多種服務發(fā)現(xiàn)方式。
  • 2)服務健康監(jiān)測: Nacos 提供對服務的實時的健康檢查,阻止向不健康的主機或服務實例發(fā)送請求。
  • 3)動態(tài)配置服務: Nacos 提供配置統(tǒng)一管理功能,能夠幫助我們將配置以中心化、外部化和動態(tài)化的方式管理所有環(huán)境的應用配置和服務配置。
  • 4)動態(tài) DNS 服務: Nacos 支持動態(tài) DNS 服務權重路由,能夠讓我們很容易地實現(xiàn)中間層負載均衡、更靈活的路由策略、流量控制以及數(shù)據(jù)中心內(nèi)網(wǎng)的簡單 DNS 解析服務。
  • 5)服務及其元數(shù)據(jù)管理: Nacos 支持從微服務平臺建設的視角管理數(shù)據(jù)中心的所有服務及元數(shù)據(jù),包括管理服務的描述、生命周期、服務的靜態(tài)依賴分析、服務的健康狀態(tài)、服務的流量管理、路由及安全策略、服務的 SLA 以及最首要的 metrics 統(tǒng)計數(shù)據(jù)。

1.2 常見的注冊中心

  1. Eureka(原生,2.0遇到瓶頸,停止維護)
  2. Zookeeper(支持,專業(yè)的獨立產(chǎn)品。例如:dubbo)
  3. Consul(原生,GO語言開發(fā))
  4. Nacos

相對于 Spring Cloud Eureka 來說,Nacos 更強大。

Nacos = Spring Cloud Eureka + Spring Cloud Config

Nacos 可以與 Spring, Spring Boot, Spring Cloud 集成,并能代替 Spring Cloud Eureka, Spring Cloud Config。

  • 通過 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 實現(xiàn)配置的動態(tài)變更。
  • 通過 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 實現(xiàn)服務的注冊與發(fā)現(xiàn)。

注:nacos與eureka的區(qū)別(簡單介紹)1)nacos和eureka的范圍不同,Nacos的閾值是針對某個具體Service的,而不是針對所有服務的;但Eureka的自我保護閾值是針對所有服務的。nacos支持CP和AP兩種;eureka只支持AP。nacos使用netty,是長連接; eureka是短連接,定時發(fā)送。2)Eureka保護方式:當在短時間內(nèi),統(tǒng)計續(xù)約失敗的比例,如果達到一定閾值,則會觸發(fā)自我保護的機制,在該機制下,Eureka Server不會剔除任何的微服務,等到正常后,再退出自我保護機制。自我保護開關(eureka.server. enab1e-self-preservation:false)Nacos保護方式:當域名健康實例(Instance)占總服務實例(Instance)的比例小于閾值時,無論實例(Instance)是否健康,都會將這個實例(Instance)返回給客戶端。這樣做雖然損失了一部分流量,但是保證了集群的剩余健康實例(Instance)能正常工作。

1.3 Nacos結構圖

1.4 Nacos下載和安裝

1)軟件環(huán)境

Nacos 版本:2.0.4mysql版本:5.7

2)安轉步驟

此處使用docker安轉nacos(單節(jié)點)

注: 注意啟動時需要配置這個環(huán)境配置 -e MODE=standalone 否則默認啟動為占用內(nèi)存為1G,

1、先拉取鏡像
命令:docker pull nacos/nacos-server:v2.0.4
2、運行容器
命令: docker run --name nacos(容器名稱) -d -p 8848(外部訪問端口):8848(容器內(nèi)端口) -p 9848:9848
-p 9849:9849 --privileged=true --restart=always -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -e PREFER_HOST_MODE=hostname -v /home/nacos/logs(數(shù)據(jù)卷主機地址):/home/nacos/logs(數(shù)據(jù)卷容器內(nèi)部地址) -v /home/nacos/conf:/home/nacos/conf ea54f31c46e4(容器id)

3)查看容器是否啟動

命令:docker ps

4)查看容器相關日志

命令:docker logs --since 10m nacos的容器id #查看指定容器的輸出日志

注意:如果查看日志發(fā)現(xiàn)報錯如下截圖

證明缺少日志文件,我們可以在宿主機配置文件目錄下添加如下內(nèi)容

1)新建文件nacos-logback.xml,在我們宿主機掛載的對應的保存配置文件的目錄下,并在下方添加如下配置;

2)注意log.path 中的value配置要和日志數(shù)據(jù)卷掛載的目錄一致

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false" scan="true" scanPeriod="1 seconds">
    <contextName>logback</contextName>
    <property name="log.path" value="/home/nacos/logs/logback.log" />
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- <filter class="com.example.logback.filter.MyFilter" /> -->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
              <level>ERROR</level>
        </filter>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="file"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${log.path}.%d{yyyy-MM-dd}.zip</fileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n
            </pattern>
        </encoder>
    </appender>
    <root level="debug">
        <appender-ref ref="console" />
        <appender-ref ref="file" />
    </root>
    <logger name="com.example.logback" level="warn" />
</configuration>

5)進行訪問本機IP地址:8848/nacos

:記得開放對應端口登錄賬號 登錄密碼nacos nacos

2、注冊服務

2.1整合nacos

引入依賴

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

在對應模塊的配置文件中添加nacos配置

#服務名(該服務名,會在nacos上顯示)
spring.application.name=服務名稱
# nacos服務地址
spring.cloud.nacos.discovery.server-addr=ip:端口

在啟動類上添加注解

2.2重啟服務,查看

重新啟動服務,登錄nacos頁面查看(下圖發(fā)現(xiàn)服務成功注冊上nacos中)

3、整合外部的mysql(單節(jié)點)

3.1建庫建表

可以直接根據(jù)里面的內(nèi)容創(chuàng)建建表鏈接

:對應nacos版本建表可能出現(xiàn)的問題

3.2修改數(shù)據(jù)卷掛載出來的nacos配置

進入數(shù)據(jù)卷保存路面

此處我們nacos配置保存在宿主機的/home/nacos/conf中

修改下面內(nèi)容即可

重啟 Nacos 即可,驗證。再次創(chuàng)建相關信息、重啟服務之后依然存在。

4、Nacos集群化部署

之前我們搭建的nacos是standalone(單節(jié)點模式),nacos是支持集群化部署的,最好使用單數(shù)節(jié)點進行集群化部署(因為此處會有投票機制),此處因為只有兩臺機器,所以只演示兩臺機器如何部署

1、使用docker,分別在不同的服務器上運行兩臺nacos容器

注意:2.x版本的nacos需要開放9848 和 9849 端口的映射端口

下面為示例命令:

docker run -d \
#  hostname
-e PREFER_HOST_MODE=nacos \
# 單例/集群模式
-e MODE=cluster \
# nacos cluster地址,節(jié)點地址
-e NACOS_SERVERS="124.223.xx.xx:8848 106.52.xx.xx:8848" \
# 開啟mysql
-e SPRING_DATASOURCE_PLATFORM=mysql \
# mysql主節(jié)點host
-e MYSQL_SERVICE_HOST=106.52.xx.xx \
# mysql主節(jié)點端口
-e MYSQL_SERVICE_PORT=3306 \
# 數(shù)據(jù)庫用戶名
-e MYSQL_SERVICE_USER=root \
# 數(shù)據(jù)庫密碼
-e MYSQL_SERVICE_PASSWORD=123456 \
#數(shù)據(jù)庫名稱
-e MYSQL_SERVICE_DB_NAME=nacos_config_cluster \
# 自定義nacos服務器IP(當前)
-e NACOS_SERVER_IP=106.52.xx.xx \
# 指定映射端口 8848容器多映射9848 9849 端口
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
# 容器名
--name nacos-8848 \
--restart=always 
# 掛載
-v /home/nacos/logs:/home/nacos/logs -v /home/nacos/conf:/home/nacos/conf  \
容器id

2、查看nacos控制臺(通過每個節(jié)點都可以看到對應信息)

3、集群簡介

  • leader節(jié)點:負責事務型請求(事務型:創(chuàng)建配置、修改配置、刪除配置)
  • follow節(jié)點:負責讀(查詢請求)
  • 宕機情況:當leader節(jié)點宕機時,follow節(jié)點進行投票選舉出新的leader節(jié)點(與傳統(tǒng)的redis等不同的是,follow會自動進行重新選舉,不需要借助類似于哨兵機制這種機制進行選舉)

5、可能遇到的問題

1、conf無法掛載出來

在使用docker運行時,將容器內(nèi)的conf掛載出來時,發(fā)現(xiàn)并沒有對應的配置文件

1)先運行一個測試nacos容器

 docker run -p 8848:8848 --name nacostest -d 容器id

2)將容器內(nèi)的文件復制出來

#配置文件復制 
#第一個目錄為容器內(nèi)目錄  第二個為宿主機目錄
docker cp nacostest(容器名):/home/nacos/logs/ /home/nacos/logs
docker cp nacostest(容器名):/home/nacos/conf/ /home/nacos/conf

3)強制關閉容器

docker rm -f 容器id

4)然后在重新運行,包含數(shù)據(jù)卷掛載命令的啟動命令

docker運行命令介紹

名稱描述
MODE系統(tǒng)啟動方式: 集群/單機 cluster/standalone默認 cluster
NACOS_SERVERS集群地址p1:port1空格ip2:port2 空格ip3:port3
PREFER_HOST_MODE支持IP還是域名模式hostname/ip 默認 ip
NACOS_SERVER_PORTNacos 運行端口默認 8848
NACOS_SERVER_IP多網(wǎng)卡模式下可以指定IP
SPRING_DATASOURCE_PLATFORM單機模式下支持MYSQL數(shù)據(jù)庫mysql / 空 默認:空
MYSQL_SERVICE_HOST數(shù)據(jù)庫 連接地址
MYSQL_SERVICE_PORT數(shù)據(jù)庫端口默認 : 3306
MYSQL_SERVICE_DB_NAME數(shù)據(jù)庫庫名
MYSQL_SERVICE_USER數(shù)據(jù)庫用戶名
MYSQL_SERVICE_PASSWORD數(shù)據(jù)庫用戶密碼
MYSQL_SERVICE_DB_PARAM數(shù)據(jù)庫連接參數(shù)default :
MYSQL_DATABASE_NUM數(shù)據(jù)庫編號默認 :1
JVM_XMS-Xms默認 :1g
JVM_XMX-Xmx默認 :1g
JVM_XMN-Xmn默認 :512m
JVM_MS-XX:MetaspaceSize默認 :128m
JVM_MMS-XX:MaxMetaspaceSize默認 :320m
NACOS_DEBUG是否開啟遠程DEBUG y/n默認 :n
TOMCAT_ACCESSLOG_ENABLEDserver.tomcat.accesslog.enabled默認 :false
NACOS_AUTH_SYSTEM_TYPE權限系統(tǒng)類型選擇,目前只支持nacos類型默認 :nacos
NACOS_AUTH_ENABLE是否開啟權限系統(tǒng)默認 :false
NACOS_AUTH_TOKEN_EXPIRE_SECONDStoken 失效時間默認 :18000
NACOS_AUTH_TOKENtoken默認 :SecretKey012345678901234567890123456789012345678901234567890123456789
NACOS_AUTH_CACHE_ENABLE權限緩存開關 ,開啟后權限緩存的更新默認有15秒的延遲默認 : false
MEMBER_LIST通過環(huán)境變量的方式設置集群地址例子:192.168.16.101:8847?raft_port=8807,192.168.16.101?raft_port=8808,192.168.16.101:8849?raft_port=8809
EMBEDDED_STORAGE是否開啟集群嵌入式存儲模式 embedded默認 : none
NACOS_AUTH_CACHE_ENABLEnacos.core.auth.caching.enableddefault : false
NACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLEnacos.core.auth.enable.userAgentAuthWhitedefault : false
NACOS_AUTH_IDENTITY_KEYnacos.core.auth.server.identity.keydefault : serverIdentity
NACOS_AUTH_IDENTITY_VALUEnacos.core.auth.server.identity.valuedefault : security
NACOS_SECURITY_IGNORE_URLSnacos.security.ignore.urlsdefault : /,/error,//*.css,//.js,/**/.html,//*.map,//.svg,/**/.png,//*.ico,/console-fe/public/,/v1/auth/,/v1/console/health/,/actuator/,/v1/console/server/

到此這篇關于Nacos簡介最新收藏版的文章就介紹到這了,更多相關Nacos簡介內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 詳解springMVC兩種方式實現(xiàn)多文件上傳及效率比較

    詳解springMVC兩種方式實現(xiàn)多文件上傳及效率比較

    本篇文章介紹了springMVC兩種方式實現(xiàn)多文件上傳及效率比較。springMVC實現(xiàn)多文件上傳有兩種,一種是字節(jié)流的方式進行文件上傳,另外一種是使用springMVC包裝好的解析器進行上傳,有興趣的可以了解一下。
    2016-12-12
  • JavaWeb 入門:Hello Servlet

    JavaWeb 入門:Hello Servlet

    這篇文章主要介紹了Servlet開發(fā)JavaWeb工程示例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • Java Thread之Sleep()案例詳解

    Java Thread之Sleep()案例詳解

    這篇文章主要介紹了Java Thread之Sleep()案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 一文詳解Java17中LinkedList類的用法和應用場景

    一文詳解Java17中LinkedList類的用法和應用場景

    LinkedList 是 Java 集合框架中基于雙向鏈表實現(xiàn)的類,實現(xiàn)了 List 和 Deque 接口,本文將為大家介紹一下它在Java 17 中如何更高效的使用吧
    2025-03-03
  • Java Map排序如何按照值按照鍵排序

    Java Map排序如何按照值按照鍵排序

    該文章主要介紹Java中三種Map(HashMap、LinkedHashMap、TreeMap)的默認排序行為及實現(xiàn)按鍵排序和按值排序的方法,每種方法結合實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2025-11-11
  • 基于@GetMapping注解攜帶參數(shù)的方式

    基于@GetMapping注解攜帶參數(shù)的方式

    這篇文章主要介紹了基于@GetMapping注解攜帶參數(shù)的方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • SpringCloudAlibaba整合Feign實現(xiàn)遠程HTTP調(diào)用的簡單示例

    SpringCloudAlibaba整合Feign實現(xiàn)遠程HTTP調(diào)用的簡單示例

    這篇文章主要介紹了SpringCloudAlibaba 整合 Feign 實現(xiàn)遠程 HTTP 調(diào)用,文章中使用的是OpenFeign,是Spring社區(qū)開發(fā)的組件,需要的朋友可以參考下
    2021-09-09
  • Spring事務執(zhí)行流程及如何創(chuàng)建事務

    Spring事務執(zhí)行流程及如何創(chuàng)建事務

    這篇文章主要介紹了Spring事務執(zhí)行流程及如何創(chuàng)建事務,幫助大家更好的理解和學習使用spring框架,感興趣的朋友可以了解下
    2021-03-03
  • Spring Boot使用JSR-380進行校驗的示例

    Spring Boot使用JSR-380進行校驗的示例

    這篇文章主要介紹了Spring Boot使用JSR-380進行校驗,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 新版POI獲取日期類型cell值過程圖解

    新版POI獲取日期類型cell值過程圖解

    這篇文章主要介紹了新版POI獲取日期類型cell值過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10

最新評論

民权县| 新巴尔虎左旗| 隆尧县| 集贤县| 广饶县| 西青区| 乡城县| 高要市| 合作市| 荥经县| 乃东县| 互助| 枣强县| 西安市| 突泉县| 湘阴县| 泸西县| 崇文区| 和静县| 罗城| 米林县| 尚义县| 高密市| 兴文县| 屏东县| 济宁市| 永寿县| 蒲城县| 三都| 江门市| 启东市| 科技| 太康县| 玉环县| 邻水| 增城市| 扶沟县| 高要市| 卓资县| 乳源| 车险|