Apache ServiceComb MetaConfig
  • Go 93.3%
  • Shell 5.1%
  • JavaScript 1.3%
  • Dockerfile 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
hzp-excellent d817e2beb7
Some checks failed
Merge check / build (push) Has been cancelled
Merge check / etcd-storage (push) Has been cancelled
Merge check / embedded-etcd-storage (push) Has been cancelled
golangci-lint / lint (push) Has been cancelled
golangci-lint / static-checks (push) Has been cancelled
Merge check / mongo-storage (push) Has been cancelled
update go-chassis version (#328)
* update go-chassis version
2025-12-06 09:58:25 +08:00
.github/workflows [fix] fix golangci-lint (#318) 2024-01-25 20:27:29 +08:00
build [fix]start kie:latest container failed (#277) 2023-02-06 20:46:46 +08:00
cmd/kieserver [fix]start kie:latest container failed (#277) 2023-02-06 20:46:46 +08:00
deployments [feat] use cari package's NewTask and NewTombstone functions and change db name in mongo model (#233) 2021-12-23 10:20:09 +08:00
docs [feat] use cari package's NewTask and NewTombstone functions and change db name in mongo model (#233) 2021-12-23 10:20:09 +08:00
examples/dev [feat]support report the index of servicecomb_kie_config_count to prometheus (#316) 2024-01-26 00:09:38 +08:00
licenses SCB-1538 Fix the typo of the LICENSE (#47) 2019-10-21 18:35:38 +08:00
pkg [fix] cancel the depency between healthcheck and etcd (#319) 2024-02-22 19:49:33 +08:00
scripts 修复健康检查被限流住 (#291) 2023-07-29 11:36:19 +08:00
server [fix] cancel the depency between healthcheck and etcd (#319) 2024-02-22 19:49:33 +08:00
test [feat]decouple the init func of DB client and DAO (#250) 2022-07-30 11:03:22 +08:00
.gitignore remove unused param (#232) 2021-12-27 10:27:00 +08:00
go.mod update go-chassis version (#328) 2025-12-06 09:58:25 +08:00
go.sum update go-chassis version (#328) 2025-12-06 09:58:25 +08:00
LICENSE [SCB-1538] add dependency licenses and better some docs (#45) 2019-10-21 18:28:09 +08:00
NOTICE Init the project documents 2019-04-29 14:23:28 +08:00
proxy.sh modify error information (#217) 2021-09-29 17:20:37 +08:00
README.md add go client 2020-12-03 11:25:40 +08:00

Apache-ServiceComb-Kie

Build Status License Coverage Status A service for configuration management in distributed system.

Conceptions

Key

Key could indicate a configuration like "timeout", then the value could be "3s" or indicates a file name "app.properties", then the value could be content of app.properties

Labels

Each key could has labels. labels indicates a unique key. A key "log_level" with labels "env=production" may saves the value "INFO" for all application log level in production environment. A key "log_level" with labels "env=production, component=payment" may saves the value "DEBUG" for payment service in production environment.

It means all payment service print debug log, but for other service print info log.

So you can control your application runtime behaviors by setting different labels to a key.

Why use kie

kie is a highly flexible config server. Nowadays, an operation team is facing different "x-centralized" system. For example a classic application-centralized system. A operator wants to change config based on application name and version, then the label could be "app,version" for locating a app's configurations. Meanwhile some teams manage app in a data center, each application instance will be deployed in a VM machine. then label could be "farm,role,server,component" to locate a app's configurations. kie fit different senario for configuration management which benifit from label design.

Components

It includes 1 components

  • server: rest api service to manage kv

Features

  • kv management: you can manage config item by key and label
  • kv revision mangement: you can mange all kv change history
  • kv change event: use long polling to watch kv changes, highly decreased network cost
  • polling detail track: if any client poll config from server, the detail will be tracked

Quick Start

Run locally with Docker compose

git clone git@github.com:apache/servicecomb-kie.git
cd servicecomb-kie/deployments/docker
sudo docker-compose up

It will launch 3 components

Development

To see how to build a local dev environment, check here

Build

This will build your own service image and binary in local

cd build
export VERSION=0.0.1 #optional, it is latest by default
./build_docker.sh

This will generate a "servicecomb-kie-0.0.1-linux-amd64.tar" in "release" folder, and a docker image "servicecomb/kie:0.0.1"

API Doc

After you launch kie server, you can browse API doc in http://127.0.0.1:30110/apidocs.json, copy this doc to http://editor.swagger.io/

Documentations

https://kie.readthedocs.io/en/latest/

or follow here to generate it in local

Clients

Contact

Bugs: issues

Contributing

See Contribution guide for details on submitting patches and the contribution workflow.

Reporting Issues

See reporting bugs for details about reporting any issues.