An open-source, multi-language, and multi-framework cloud-native service discovery and governance center

1. Project Overview
Polaris is a cloud-native service discovery and governance center that supports multiple languages and frameworks, solving service visibility, fault tolerance, traffic control, and security issues in distributed and microservices architectures.
2. Open Source License
UsageBSD 3-ClauseOpen-source agreement
3. Screenshots



4. Feature Overview
Core Functionality:
- Service Registration and Discovery with Health Checks:
- In a service-oriented distributed application architecture, Polaris maintains the constantly changing request addresses through service registration and discovery, improving application extensibility and reducing migration costs.
- Traffic Scheduling: Routing and Load Balancing
- Based on request tags, instance tags, and tag matching rules, dynamic scheduling can be performed on online traffic, which can be applied to scenarios such as proximity by region, tag-based gray release, and new canary release, etc.
- Overload protection: service rate limiting and circuit breaking
- For entry services, North Star provides service rate limiting functions. When the load has exceeded the system's maximum processing capacity, access rate limiting can be performed against different request sources and system resources, preventing the service from being overwhelmed. At the same time, North Star also provides circuit breaking functions, which can be triggered based on real-time collection of error rates and other indicators, and can be used to break down abnormal downstream services, interfaces, instances, or instance groups in a timely manner, reducing the request failure rate.
- Observability
- Provides service governance visualization monitoring views, supports query of request quantity, request delay, and request success rate indicators, supports service call relationships and multi-dimensional traffic curve queries, achieving service governance functions and traffic observability integration.
- Configuration Management
- Supports application configuration, public configuration subscription and publication, version management, and change notification, achieving dynamic application configuration effectiveness.
Features:
- North Star's functions are implemented in a plugin-based form, and businesses can choose to use them based on their needs, and it is also very easy to extend them.
- Provides SDK and Sidecar two types of access methods, SDK is suitable for high-performance business scenarios, Sidecar is suitable for non-invasive development models.
- For SDK access methods, provides Java, Go, C++ and other language clients, with the same function implementation.
- North Star SDK can be integrated into commonly used frameworks and gateways, such as Spring Cloud, gRPC and Nginx.
- Suitable for Kubernetes, supports automatic injection of K8s service and Polaris sidecar.
- Open-source version of Tencent's million-level service governance center, which has accumulated Tencent's years of experience in distributed service governance.
5. Tech Stack
Quick start
Installation and Deployment
Download single-machine version
The latest version can be downloaded from the following address, and when downloading, please select the package name aspolaris-standalone-release-*.zipand select the package according to the current operating system (select windows10 for windows, darwin for mac, and linux/unix for Linux/Unix).
- Access to One Flying Open-source: https://code.exmay.com/ Download
For example, download thepolaris-standalone-release_v1.11.0-beta.2.linux.amd64.zippackage, and after downloading, execute the following command to decompress:
unzip polaris-standalone-release_v1.11.0-beta.2.linux.amd64.zip cd polaris-standalone-release_v1.11.0-beta.2.linux
Start the service end
On Linux/Unix/Mac platforms, execute the following command to start North Star single-machine version:
./install.sh
On Windows platforms, execute the following command to start North Star single-machine version:
install.bat
Verify installation
curl http://127.0.0.1:8090
Return to Polaris Server, proving that the function is normal.
If you need to understand more installation methods (such as modifying the installation port, containerized installation, cluster version installation, etc.), please refer to the deployment manual.
Usage examples
North Star supports multiple languages, multiple frameworks, and multiple forms (proxyless and proxy) of microservices for access.
Service Registration and Discovery with Health Checks:
(1) Microservices access based on mainstream frameworks can be referenced:
- Spring Cloud/Spring Boot access
- gRPC-Go access
(2) mainstream language microservice access can be referred to:
- Java language access
- Go language access
- C++ language access
(3) proxy mode microservice access can be referred to:
- Envoy access
- DNS access (sample development in progress)
Service limit
(1) Microservices access based on mainstream frameworks can be referenced:
- Spring Cloud/Spring Boot access
- gRPC-Go access
(2) mainstream language microservice access can be referred to:
- Java language access
- Go language access
- C++ language access
(3) proxy mode microservice access can be referred to:
- Envoy access (sample development in progress)
Traffic scheduling
(1) Microservices access based on mainstream frameworks can be referenced:
- Spring Cloud/Spring Boot access
- gRPC-Go access
(2) mainstream language microservice access can be referred to:
- Java language access
- Go language access
- C++ language access (sample development in progress)
(3) proxy mode microservice access can be referred to:
- Envoy access (sample development in progress)
Configuration Management
(1) Microservices access based on mainstream frameworks can be referenced:
- Spring Cloud/Spring Boot access
(2) mainstream language microservice access can be referred to:
- Java language access
- Go language access
More guides
More function usage guides can be referred to: User Guide
Detailed documentation
OpenAPI reference
API Manual
Performance Test Report
Performance Report
Official Documentation
For more detailed feature introduction, architecture introduction, and best practices, please refer to: Official Documentation