Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Bilibili/discovery
A registry for resilient mid-tier load balancing and failover.
https://github.com/Bilibili/discovery
discovery eureka golang
Last synced: about 2 months ago
JSON representation
A registry for resilient mid-tier load balancing and failover.
- Host: GitHub
- URL: https://github.com/Bilibili/discovery
- Owner: bilibili
- License: mit
- Created: 2018-04-20T12:57:50.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-07-16T03:33:04.000Z (over 1 year ago)
- Last Synced: 2024-10-15T00:21:17.053Z (about 2 months ago)
- Topics: discovery, eureka, golang
- Language: Go
- Size: 2.39 MB
- Stars: 1,778
- Watchers: 62
- Forks: 400
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - discovery - A registry for resilient mid-tier load balancing and failover. (Server Applications / HTTP Clients)
- zero-alloc-awesome-go - discovery - A registry for resilient mid-tier load balancing and failover. (Server Applications / HTTP Clients)
- awesome-go - discovery - A registry for resilient mid-tier load balancing and failover. Stars:`1.8K`. (Server Applications / HTTP Clients)
- awesome-go - discovery - A registry for resilient mid-tier load balancing and failover. - ★ 302 (Server Applications)
- awesome-go-zh - discovery
README
# Discovery
[![Build Status](https://travis-ci.org/bilibili/discovery.svg?branch=master)](https://travis-ci.org/bilibili/discovery)
[![Go Report Card](https://goreportcard.com/badge/github.com/bilibili/discovery)](https://goreportcard.com/report/github.com/bilibili/discovery)
[![codecov](https://codecov.io/gh/Bilibili/discovery/branch/master/graph/badge.svg)](https://codecov.io/gh/Bilibili/discovery)Discovery is a based service that is production-ready and primarily used at [Bilibili](https://www.bilibili.com/) for locating services for the purpose of load balancing and failover of middle-tier servers.
## Quick Start
### env
`go1.12.x` (and later)
### build
```shell
cd $GOPATH/src
git clone https://github.com/bilibili/discovery.git
cd discovery/cmd/discovery
go build
```### run
```shell
./discovery -conf discovery.toml -alsologtostderr
````-alsologtostderr` is `glog`'s flag,means print into stderr. If you hope print into file, can use `-log.dir="/tmp"`. [view glog doc](https://godoc.org/github.com/golang/glog).
### Configuration
You can view the comments in `cmd/discovery/discovery.toml` to understand the meaning of the config.
### Client
* [API Doc](doc/api.md)
* [Go SDK](naming/client.go) | [Example](naming/example_test.go)
* [Java SDK](https://github.com/flygit/discoveryJavaSDK)
* [CPP SDK](https://github.com/brpc/brpc/blob/master/src/brpc/policy/discovery_naming_service.cpp)
* [Python SDK](https://github.com/tomwei7/discovery-client)
* [other language](doc/sdk.md)## Intro/Arch/Practice
* [Introduction](doc/intro.md)
* [Architecture](doc/arch.md)
* [Practice in Bilibili](doc/practice.md)## Feedback
Please report bugs, concerns, suggestions by issues, or join QQ-group 716486124 to discuss problems around source code.