佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Govern Service 基于 Redis 的服務(wù)治理平臺安裝過程詳解

Govern Service 基于 Redis 的服務(wù)治理平臺安裝過程詳解

熱門標(biāo)簽:鐵路電話系統(tǒng) 網(wǎng)站排名優(yōu)化 呼叫中心市場需求 AI電銷 Linux服務(wù)器 百度競價排名 服務(wù)外包 地方門戶網(wǎng)站

Govern Service 基于 Redis 的服務(wù)治理平臺(服務(wù)注冊/發(fā)現(xiàn) 配置中心)

Govern Service 是一個輕量級、低成本的服務(wù)注冊、服務(wù)發(fā)現(xiàn)、 配置服務(wù) SDK,通過使用現(xiàn)有基礎(chǔ)設(shè)施中的 Redis (相信你已經(jīng)部署了Redis),不用給運(yùn)維部署帶來額外的成本與負(fù)擔(dān)。
借助于 Redis 的高性能, Govern Service 提供了超高TPSQPS (10W+/s JMH 基準(zhǔn)測試)。Govern Service 結(jié)合本地進(jìn)程緩存策略 + Redis PubSub,實現(xiàn)實時進(jìn)程緩存刷新,兼具無與倫比的QPS性能、進(jìn)程緩存與 Redis 的實時一致性。

安裝

Gradle

Kotlin DSL

 val governVersion = "0.9.13";
    implementation("me.ahoo.govern:spring-cloud-starter-config:${governVersion}")
    implementation("me.ahoo.govern:spring-cloud-starter-discovery:${governVersion}")

Maven

?xml version="1.0" encoding="UTF-8"?>

project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  modelVersion>4.0.0/modelVersion>
  artifactId>demo/artifactId>
  properties>
    govern.version>0.9.13/govern.version>
  /properties>

  dependencies>
    dependency>
      groupId>me.ahoo.govern/groupId>
      artifactId>spring-cloud-starter-config/artifactId>
      version>${govern.version}/version>
    /dependency>
    dependency>
      groupId>me.ahoo.govern/groupId>
      artifactId>spring-cloud-starter-discovery/artifactId>
      version>${govern.version}/version>
    /dependency>
  /dependencies>

/project>

bootstrap.yml (Spring-Cloud-Config)

spring:
  application:
    name: ${service.name:govern-rest-api}
  cloud:
    govern:
      namespace: ${govern.namespace:govern-{system}}
      config:
        config-id: ${spring.application.name}.yml
      redis:
        mode: ${govern.mode:standalone}
        url: ${govern.redis.uri:redis://localhost:6379}
logging:
  file:
    name: logs/${spring.application.name}.log

REST-API Server (Optional)

安裝 REST-API Server

方式一:下載可執(zhí)行文件

下載 rest-api-server

解壓 rest-api-0.9.13.tar

cd rest-api-0.9.13
# 工作目錄: rest-api-0.9.13
bin/rest-api --server.port=8080 --govern.redis.uri=redis://localhost:6379

方式二:Docker run

docker pull ahoowang/govern-service:0.9.13
docker run --name govern-service -d -p 8080:8080 --link redis -e GOVERN_REDIS_URI=redis://redis:6379  ahoowang/govern-service:0.9.13

MacBook Pro (M1)

請使用 ahoowang/govern-service:0.9.13-armv7

docker pull ahoowang/govern-service:0.9.13-armv7
docker run --name govern-service -d -p 8080:8080 --link redis -e GOVERN_REDIS_URI=redis://redis:6379  ahoowang/govern-service:0.9.13-armv7

http://localhost:8080/dashboard

Dashboard

命名空間管理

配置管理

服務(wù)管理

REST-API

http://localhost:8080/swagger-ui/index.html

Namespace

/v1/namespaces
GET
/v1/namespaces/{namespace}
PUT
GET
/v1/namespaces/current
GET
/v1/namespaces/current/{namespace}
PUT

Config

/v1/namespaces/{namespace}/configs
GET
/v1/namespaces/{namespace}/configs/{configId}
GET
PUT
DELETE
/v1/namespaces/{namespace}/configs/{configId}/versions
GET
/v1/namespaces/{namespace}/configs/{configId}/versions/{version}
GET
/v1/namespaces/{namespace}/configs/{configId}/to/{targetVersion}
PUT

Service

/v1/namespaces/{namespace}/services/
GET
/v1/namespaces/{namespace}/services/{serviceId}/instances
GET
PUT
/v1/namespaces/{namespace}/services/{serviceId}/instances/{instanceId}
DELETE
/v1/namespaces/{namespace}/services/{serviceId}/instances/{instanceId}/metadata
PUT
/v1/namespaces/{namespace}/services/{serviceId}/lb
GET

JMH-Benchmark

  • 基準(zhǔn)測試運(yùn)行環(huán)境:筆記本開發(fā)機(jī) ( MacBook Pro (M1) )
  • 所有基準(zhǔn)測試都在開發(fā)筆記本上執(zhí)行。
  • Redis 部署環(huán)境也在該筆記本開發(fā)機(jī)上。

ConfigService

gradle config:jmh
# JMH version: 1.29
# VM version: JDK 11.0.11, OpenJDK 64-Bit Server VM, 11.0.11+9-LTS
# VM invoker: /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/java
# VM options: -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/Users/ahoo/govern-service/config/build/tmp/jmh -Duser.country=CN -Duser.language=zh -Duser.variant
# Blackhole mode: full + dont-inline hint
# Warmup: 1 iterations, 10 s each
# Measurement: 1 iterations, 10 s each
# Timeout: 10 min per iteration
# Threads: 50 threads, will synchronize iterations
# Benchmark mode: Throughput, ops/time

Benchmark                                          Mode  Cnt          Score   Error  Units
ConsistencyRedisConfigServiceBenchmark.getConfig  thrpt       265321650.148          ops/s
RedisConfigServiceBenchmark.getConfig             thrpt          106991.476          ops/s
RedisConfigServiceBenchmark.setConfig             thrpt          103659.132          ops/s

ServiceDiscovery

gradle discovery:jmh
# JMH version: 1.29
# VM version: JDK 11.0.11, OpenJDK 64-Bit Server VM, 11.0.11+9-LTS
# VM invoker: /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/java
# VM options: -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/Users/ahoo/govern-service/discovery/build/tmp/jmh -Duser.country=CN -Duser.language=zh -Duser.variant
# Blackhole mode: full + dont-inline hint
# Warmup: 1 iterations, 10 s each
# Measurement: 1 iterations, 10 s each
# Timeout: 10 min per iteration
# Threads: 50 threads, will synchronize iterations
# Benchmark mode: Throughput, ops/time

Benchmark                                                Mode  Cnt          Score   Error  Units
ConsistencyRedisServiceDiscoveryBenchmark.getInstances  thrpt        76894658.867          ops/s
ConsistencyRedisServiceDiscoveryBenchmark.getServices   thrpt       466036317.472          ops/s
RedisServiceDiscoveryBenchmark.getInstances             thrpt          107778.244          ops/s
RedisServiceDiscoveryBenchmark.getServices              thrpt          106920.412          ops/s
RedisServiceRegistryBenchmark.deregister                thrpt          114094.513          ops/s
RedisServiceRegistryBenchmark.register                  thrpt          109085.694          ops/s
RedisServiceRegistryBenchmark.renew                     thrpt          127003.104          ops/s

作者:Ahoo Wang (阿虎)

Github: https://github.com/Ahoo-Wang/

SmartSql(高性能、高生產(chǎn)力,超輕量級的ORM!): https://github.com/dotnetcore/SmartSql

SmartCode(不只是代碼生成器!): https://github.com/dotnetcore/SmartCode

Govern Service 基于 Redis 的服務(wù)治理平臺(服務(wù)注冊/發(fā)現(xiàn) 配置中心): https://github.com/Ahoo-Wang/govern-service

Govern EventBus 歷經(jīng)多年生產(chǎn)環(huán)境驗證的事件驅(qū)動架構(gòu)框架: https://github.com/Ahoo-Wang/govern-eventbus

以上就是Govern Service 基于 Redis 的服務(wù)治理平臺的詳細(xì)內(nèi)容,更多關(guān)于Redis 服務(wù)治理的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • linux 開機(jī)自啟動redis服務(wù)的方法
  • 一次centos Docker網(wǎng)橋模式無法訪問宿主機(jī)Redis服務(wù)的故障排除經(jīng)歷
  • Windows服務(wù)器中PHP如何安裝redis擴(kuò)展
  • springcloud微服務(wù)基于redis集群的單點登錄實現(xiàn)解析
  • 淺談Redis在微服務(wù)架構(gòu)中的幾種應(yīng)用場景

標(biāo)簽:湖南 銅川 湘潭 崇左 衡水 蘭州 仙桃 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Govern Service 基于 Redis 的服務(wù)治理平臺安裝過程詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    沅陵县| 华池县| 灵宝市| 金塔县| 敦煌市| 宁波市| 庆安县| 浦东新区| 大名县| 子长县| 博白县| 通州区| 南阳市| 五常市| 施甸县| 平潭县| 阳东县| 九龙县| 永安市| 紫金县| 武定县| 滦南县| 东平县| 遂川县| 泰和县| 三明市| 彝良县| 重庆市| 石城县| 辽中县| 穆棱市| 铜鼓县| 射阳县| 平泉县| 新河县| 澄江县| 宁津县| 界首市| 舟曲县| 玉田县| 宜兴市|