A standalone service center to allow services to register their instance information and to discover providers of a given service

Clone this repo:
  1. 5ee0829 optimize codec to gain 5% better performance (#1330) by Shawn · 2 days ago master
  2. d291b0a [feat]Upgrade 3rd party version (#1327) by little-cui · 11 days ago
  3. b69e249 refactor policy validator (#1323) by Shawn · 11 days ago
  4. 20240cf [fix]syncer health failure (#1322) by little-cui · 2 weeks ago
  5. 6b23a7b revise benchmark report (#1321) by Shawn · 2 weeks ago

Apache-ServiceComb-Service-Center

Build Status Coverage Status Go Report Card GoDoc HitCount Gitter

Apache ServiceComb Service-Center is a Restful based service-registry that provides micro-services discovery and micro-service management. It is based on Open API format and provides features like service-discovery, fault-tolerance, dynamic routing, notify subscription and scalable by design. It has high performance cache design and separate entity management for micro-services and their instances. It provides out of box support for metrics and tracing. It has a web portal to manage the micro-services.

Components

  • server: a http server which provide restful API
  • scctl: CLI of server
  • syncer: alpha feature. multiple cluster synchronization tool, designed for large microservice architectures

Features

  • Open API: API doc(Open API format) management for microservice
  • Metadata: Metadata management for both microservice and microservice instance
  • Separated: Separated microservice and microservice instance entity management
  • Domains: Logical multiple domains management
  • Security: Role base access control for service discovery
  • Discovery: Support query instance by criteria
  • Subscribe: Use web socket to notify client about instance change events
  • Portal: Awesome web portal
  • Fault tolerance: Multiple fault tolerance mechanism and design in the architecture
  • Performance: Performance/Caching design
  • Metrics: Able to expose Prometheus metric API automatically, see
  • Tracing: Able to report tracing data to Zipkin server
  • Pluginable: Able to load custom authentication, tls and other dynamic libraries
  • CLI: Easy to control service center
  • Kubernetes: Embrace kubernetes ecosystem and support multi cluster service discovery
  • Datacenters: Additional layer of abstraction to clusters deployed in multiple datacenters
  • Aggregation: Able to aggregate microservices from multiple registry platforms and support platform registry and client side registry at the same time
  • FastRegister: Fast register instance to service center

Documentation

Project documentation is available on the ServiceComb website. You can also find full document here.

Quick Start

Getting Service Center

The easiest way to get Service Center is to use one of the pre-built release binaries which are available for Linux, Windows and Docker.

Build docker image

sudo bash scripts/docker/build-image/build.sh

it builds an image servicecomb/service-center

Get The Latest Release

Download Service Center

Client

Ecosystem

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.

License

Licensed under an Apache 2.0 license.

Export Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The Apache Software Foundation has classified this software as Export Commodity Control Number (ECCN) 5D002, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the “publicly available” Section 742.15(b) exemption (see the BIS Export Administration Regulations, Section 742.15(b)) for both object code and source code.

The following provides more details on the included cryptographic software: