成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

高性能配置管理中心 duic

newsning / 1770人閱讀

摘要:配置中心在軟件開發(fā)中隨著業(yè)務(wù)的需要需求的變更程序的靈活我們時(shí)常需要在項(xiàng)目中設(shè)置各種開關(guān)或者配置項(xiàng)在往常時(shí)一般會(huì)采用配置文件的方式但是在這分布式集群時(shí)代采用傳統(tǒng)的配置管理方式顯得有點(diǎn)力不從心同時(shí)在我們的終端我們也時(shí)常需要各種配置在面對(duì)大量的終

 ______              _    ______
|_   _ `.           (_) ." ___  |
  | | `.  __   _   __ / ."   \_|
  | |  | |[  | | | [  || |
 _| |_." / | \_/ |, | | `.___."
|______."  ".__."_/[___]`.____ ."
duic 配置中心

在軟件開發(fā)中隨著業(yè)務(wù)的需要, 需求的變更, 程序的靈活我們時(shí)常需要在項(xiàng)目中設(shè)置各種開關(guān)或者配置項(xiàng). 在往常時(shí)一般會(huì)采用配置文件的方式, 但是在這分布式集群時(shí)代采用傳統(tǒng)的配置管理方式顯得有點(diǎn)力不從心. 同時(shí)在我們的 app/web 終端我們也時(shí)常需要各種配置, 在面對(duì)大量的終端配置獲取請(qǐng)求我們的配置中心需要高性能, 高穩(wěn)定性.

duic 的誕生并不僅僅只是為了解決服務(wù)器應(yīng)用的配置

簡(jiǎn)介

duic 是采用 spring-webflux 開發(fā), 通過(guò) RESTful 方式拉取配置, 支持配置合并, 內(nèi)置 web 控制臺(tái)修改配置, 支持配置用戶權(quán)限設(shè)置, 支持配置訪問 IP 限制, 支持 token 限制, 支持多應(yīng)用多環(huán)境變量, 支持 docker, 支持集群

特性

集中配置管理, 多應(yīng)用多環(huán)境配置
在 web 控制臺(tái)中你可以創(chuàng)建多個(gè)配置, 相同應(yīng)用不同環(huán)境的配置可以使用(profile)區(qū)分, 同一個(gè)應(yīng)用下多個(gè)(profile)配置可以合并 https://duic.zhudy.io/index.html

配置數(shù)據(jù)類型/數(shù)據(jù)格式
duic 采用 yaml 文件格式管理配置, 天生支持?jǐn)?shù)據(jù)類型及數(shù)據(jù)格式

HTTP 方式拉取配置
duic 采用 HTTP 的方式拉取配置, 所以你可以在任何應(yīng)用中使用 duic 配置管理

配置狀態(tài)檢查
支持配置狀態(tài)檢查, 如果配置發(fā)生變動(dòng)該狀態(tài)也會(huì)相應(yīng)變化, 使用方可根據(jù)狀態(tài)的變化重載配置
GET {base_uri}/apps/states/{name}/{profile}

多配置合并
相同應(yīng)用(name)下的多個(gè)配置(profile)可以合并配置, 相同 key 的配置將以深度合并的方式返回

按需取獲取配置
你有時(shí)可能需要獲取某個(gè) key 的配置而不是整個(gè) profile 的配置
GET {base_uri}/apps/{name}/{profile}/{key}
key 支持按 . 分隔, 父 key 可以獲取子項(xiàng)的所有配置

獲取 k1 項(xiàng)的配置

request
$ curl https://duic.zhudy.io/api/v1/apps/sample/first/k1
response

{
    "string":"samples first k1 string",
    "int":11,
    "array":[
        1,
        2,
        3
    ],
    "multiple_lines":"sample
first
multiple
lines"
}

獲取 k1.string 項(xiàng)的配置

request
$ curl https://duic.zhudy.io/api/v1/apps/sample/first/k1.string
response

{
    "value":"samples first k1 string"
}

完美支持 spring-boot
duic 不僅可以管理你的業(yè)務(wù)配置, 同時(shí)還可以管理 spring-boot 自身的任何配置, 你可以像在 application.yaml 文件中編輯配置一樣的編輯它, 同時(shí)我們還提供了 duic-spring-cloud-config-client, 該庫(kù)支持 @ConfigurationProperties @Value 注解, 同時(shí)還支持配置熱加載

配置權(quán)限管理
支持配置權(quán)限管理, 用戶只可以修改自身?yè)碛袡?quán)限的配置

配置支持 IP 訪問限制
每個(gè) profile 的配置都可以設(shè)置 IP 訪問控制, 不在訪問限制內(nèi)的 IP 將無(wú)法獲取配置信息

配置支持 TOKEN 校驗(yàn)
訪問有 TOKEN 校驗(yàn)的配置必須在請(qǐng)求中帶上 TOKEN, TOKEN 校驗(yàn)失敗將無(wú)法獲取配置信息

支持 docker 部署
https://hub.docker.com/r/zhud...

部署簡(jiǎn)單
duic 部署只依賴于 mongodb, 集群部署也只需要直接啟動(dòng)多個(gè)實(shí)例即可, 不需要其它任何中間件或者服務(wù)

高性能
duic 是采用 spring-webflux 開發(fā), 能最大化利用機(jī)器的硬件資源, 同時(shí) duic 是直接將所有可用的配置直接加載在內(nèi)存中, 在拉取配置時(shí) 直接從內(nèi)存中返回配置信息, 對(duì)于數(shù)據(jù)庫(kù)沒有任何壓力

資源

duic openapi-3.0 接口文檔

duic-java-client
java 版本客戶端程序

支持 java

支持 spring

duic-spring-cloud-config-client
spring-boot 配置客戶端程序

duic-examples 示例程序

部署

服務(wù)配置 application.yml

server:
  port: 7777

spring:
  jackson:
    default_property_inclusion: non_default
    date_format: yyyy-MM-dd"T"HH:mm:ss
    joda_date_time_format: yyyy-MM-dd"T"HH:mm:ss
    property_naming_strategy: CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES
  data:
    mongodb:
      uri: mongodb://127.0.0.1:27017/duic

duic:
  root_email: [email protected]
  root_password: 123456
  jwt:
    secret: U2FsdGVkX1/jO0KlWumac4yDM8rOgWPkaV0KrSHDynWOP6n8FMJB9uSc8EW/qM+VagrMBAXGpyw=
    expires_in: 180

應(yīng)用服務(wù)端口

MongoDB 連接地址

默認(rèn)用戶登錄郵箱

默認(rèn)用戶登錄密碼

JWT HMAC256 簽名字符串

JWT 過(guò)期時(shí)間(單位:分鐘)

docker-compose 部署

在 docker-compose 配置中已經(jīng)集成 mongodb, nginx, let’s encrypt, docker-gen 服務(wù)發(fā)現(xiàn)

啟動(dòng)步驟

git clone
$ git clone https://github.com/zhudyos/duic-docker-compose.git

進(jìn)入文件夾
cd duic-docker-compose

start.sh 授權(quán)
$ chmod +x start.sh

啟動(dòng)
$ ./start.sh

docker 部署

安裝 MongoDB

服務(wù)配置

1. 創(chuàng)建 **config** 文件夾
2. 在 **config** 文件夾中創(chuàng)建配置文件 **application.yml**
3. **application.yml** 配置文件將 **spring.data.mongodb.uri** 連接地址修改為安裝服務(wù)的 MongoDB 連接地址

啟動(dòng)容器
$ docker run -d -p 7777:7777 -v $(pwd)/config:/app/config zhudyos/duic

application.yml 配置文件放置在 config 目錄中并掛載到容器的 /app/config 目錄中, duic 則會(huì)使用指定的配置

GitHub Source Repository

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69036.html

相關(guān)文章

  • 性能配置管理中心 duic

    摘要:配置中心在軟件開發(fā)中隨著業(yè)務(wù)的需要需求的變更程序的靈活我們時(shí)常需要在項(xiàng)目中設(shè)置各種開關(guān)或者配置項(xiàng)在往常時(shí)一般會(huì)采用配置文件的方式但是在這分布式集群時(shí)代采用傳統(tǒng)的配置管理方式顯得有點(diǎn)力不從心同時(shí)在我們的終端我們也時(shí)常需要各種配置在面對(duì)大量的終 ______ _ ______ |_ _ `. (_) . ___ | | | `...

    binaryTree 評(píng)論0 收藏0
  • 分布式配置中心 duic

    摘要:什么是是配置管理中心,將配置統(tǒng)一管理提供標(biāo)準(zhǔn)的配置格式及編輯方式。如上圖支持任何應(yīng)用,任何語(yǔ)言的配置管理,,,等,同時(shí)采用語(yǔ)法作用配置文件格式,支持?jǐn)?shù)據(jù)類型及結(jié)構(gòu)化配置。前提創(chuàng)建數(shù)據(jù)庫(kù)配置數(shù)據(jù)庫(kù)連接將文件與文件放置在同一目錄中。 什么是配置? 服務(wù)運(yùn)行時(shí)能夠通過(guò)外部動(dòng)態(tài)修改的參數(shù)既是配置。在運(yùn)行時(shí)動(dòng)態(tài)變更服務(wù)的行為,避免業(yè)務(wù)發(fā)生變更需要修改代碼或重啟服務(wù)等等。 什么是 duic? du...

    justjavac 評(píng)論0 收藏0
  • 分布式配置中心 duic

    摘要:什么是是配置管理中心,將配置統(tǒng)一管理提供標(biāo)準(zhǔn)的配置格式及編輯方式。如上圖支持任何應(yīng)用,任何語(yǔ)言的配置管理,,,等,同時(shí)采用語(yǔ)法作用配置文件格式,支持?jǐn)?shù)據(jù)類型及結(jié)構(gòu)化配置。前提創(chuàng)建數(shù)據(jù)庫(kù)配置數(shù)據(jù)庫(kù)連接將文件與文件放置在同一目錄中。 什么是配置? 服務(wù)運(yùn)行時(shí)能夠通過(guò)外部動(dòng)態(tài)修改的參數(shù)既是配置。在運(yùn)行時(shí)動(dòng)態(tài)變更服務(wù)的行為,避免業(yè)務(wù)發(fā)生變更需要修改代碼或重啟服務(wù)等等。 什么是 duic? du...

    james 評(píng)論0 收藏0
  • 分布式配置中心 duic

    摘要:什么是是配置管理中心,將配置統(tǒng)一管理提供標(biāo)準(zhǔn)的配置格式及編輯方式。如上圖支持任何應(yīng)用,任何語(yǔ)言的配置管理,,,等,同時(shí)采用語(yǔ)法作用配置文件格式,支持?jǐn)?shù)據(jù)類型及結(jié)構(gòu)化配置。前提創(chuàng)建數(shù)據(jù)庫(kù)配置數(shù)據(jù)庫(kù)連接將文件與文件放置在同一目錄中。 什么是配置? 服務(wù)運(yùn)行時(shí)能夠通過(guò)外部動(dòng)態(tài)修改的參數(shù)既是配置。在運(yùn)行時(shí)動(dòng)態(tài)變更服務(wù)的行為,避免業(yè)務(wù)發(fā)生變更需要修改代碼或重啟服務(wù)等等。 什么是 duic? du...

    wangdai 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<