English | 简体中文
README:
Principle or user manual can visit website to learn more
Polaris is a cloud-native service discovery and governance center. It can be used to solve the problem of service connection, fault tolerance, traffic control and secure in distributed and microservice architecture.
Functions:
- basic: service discover, service register and health check
- fault tolerance: circuit break and rate limit
- traffic control: request route and load balance
- secure: authenticate
Features:
- It provides SDK for high-performance business scenario and sidecar for non-invasive development mode.
- It provides multiple clients for different development languages, such as Java, Go, C++ and Nodejs.
- It can integrate with different service frameworks and gateways, such as Spring Cloud, gRPC and Nginx.
- It is compatible with Kubernetes and supports automatic injection of K8s service and Polaris sidecar.
server:
- polaris: Control Plane
- polaris-console: Console
client:
- polaris-java: Java Client
- polaris-go: Go Client
- polaris-cpp: C++ Client
- polaris-php: PHP Client
- polaris-sidecar: Envoy based Sidecar
ecosystem:
- polaris-controller: K8s Controller for Automatic Injection of K8s Service and Polaris Sidecar
- spring-cloud-tencent: spring cloud integrates with polaris-java
- grpc-java-polaris: grpc-java integrates with polaris-java
- grpc-go-polaris: grpc-go integrates with polaris-go
- dubbo3/dubbo-go: dubbo-go integrates with polaris-go
- nginx-polaris: nginx integrates with polaris-cpp
others:
Please download and install MySQL, version requirement >=5.7, download available here: https://dev.mysql.com/downloads/mysql/5.7.html
Point Script: ./store/sqldb/scripts/polaris_server.sql, one can import through mysql admin or console.
Polaris server end needs golang compile environment, version number needs >=1.17, download available here: https://golang.org/dl/#featured.
chmod +x build.sh
./build.sh
After built, one can see 'polaris-server-release_${version}.tar.gz' package from the list.
Obtain polaris-server-release_${version}.tar.gz, and unzip.
After unzipped, vi polaris-server.yaml, replace DB configuration's variable to real database information : ##DB_USER## (database username), ##DB_PWD##(database password), ##DB_ADDR##(database address), ##DB_NAME##(database name)
chmod +x ./tool/*.sh
# install
./tool/start.sh
# test whether the process is successful
./tool/p.sh
After all, run ./p.sh, prompt Polaris Server, proof the installation is successful
curl http://127.0.0.1:8090
Return text is 'Polaris Server', proof features run smoothly
Polaris supports microservices built with multi-language, multi-framework, multi-mode (proxyless / proxy) to access。
(1) multi-language access guide:
(2) multi-framework access guide:
- Spring Cloud Examples
- Spring Boot QuickStart Example
- gRPC-Go QuickStart Example
- gRPC-Java QuickStart Example
(3) proxy mode access guide:
More access guide:Doc
Polaris function guide can refer:Manual
Please scan the QR code to join the chat group.
If you have good comments or suggestions, please give us Issues or Pull Requests to contribute to improve the development experience of Polaris Mesh.
see details:CONTRIBUTING.md