Code Monkey home page Code Monkey logo

spring-boot-polaris's Introduction

Spring Boot with Polaris

English | 简体中文


Introduction

spring-boot-polaris is the polaris adapter for SpringBoot,application based on SpringBoot can use spring-boot-polaris access polaris quickly.

Spring Cloud Tencent provide an integration solution for Spring Cloud and Tencent middleware, include PolarisMesh.

Please see Spring Cloud Tencent

How to build

spring-boot-polaris uses Maven for most build-related activities, and JDK 1.8 or later versions are supported. You should be able to get off the ground quite quickly by cloning the project you are interested in and typing:

mvn clean install

How to Use

Add maven dependency

These artifacts are available from Maven Central via BOM:

<dependencyManagement>        
   <dependencies>
       <dependency>
           <groupId>com.tencent.polaris</groupId>
           <artifactId>spring-boot-polaris-dependencies</artifactId>
           <version>1.0.0</version>
           <type>pom</type>
           <scope>import</scope>
       </dependency>
   </dependencies>
</dependencyManagement>

add the module in dependencies.

Examples

A spring-boot-polaris-examples module is included in our project for you to get started with spring-boot-polaris quickly. It contains an example, and you can refer to the readme file in the example project for a quick walkthrough.

QuickStart Example

spring-boot-polaris's People

Contributors

andrewshan avatar chuntaojun avatar livk-cloud avatar polaris-admin avatar quicksandznzn avatar ranchowang avatar skyebefreeman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

spring-boot-polaris's Issues

optimize manually create thread pool

What is the feature you want to add?

Why do you want to add this feature?

How to implement this feature?

Additional context
Add any other context or screenshots about the feature request here.

依赖出现循环

Description:

The dependencies of some of the beans in the application context form a cycle:

   sdkContext defined in class path resource [cn/polarismesh/boot/context/PolarisContextConfiguration.class]
┌─────┐
|  polaris-cn.polarismesh.boot.context.PolarisContextProperties (field private java.util.List cn.polarismesh.boot.context.PolarisContextProperties.modifierList)
↑     ↓
|  polarisConfigModifier (field private cn.polarismesh.boot.context.PolarisContextProperties cn.polarismesh.boot.context.PolarisContextConfiguration$ModifyAddress.properties)
└─────┘


Action:

Relying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true.


Process finished with exit code 1

我觉得应该通过代码和设计去解决这个问题,而不是只是开启一个允许依赖循环的问题

some optimize advise

  1. separate register and feign, user sometimes don't want to use it at the same time
  2. we should not encapulate openfeign as annotation, it will make it as the spring cloud feign
  3. we should not provide our customized annotation for it will conflict to other annotations define by users
  4. we should make the consumer and provider inside the examples

spring boot能支持服务配置

What is the feature you want to add?
spring boot能支持服务配置
Why do you want to add this feature?
既然有了注册发现,配置中心也应该是配套的,目前这个项目最近更新是半年前,使用spring boot想要集成配置中心只有集成Spring Cloud Tencent
How to implement this feature?
需要spring-boot-starter

【讨论】计划对spring-boot-polaris项目停止维护

spring-boot-polaris这个项目创建的初衷是为了支持Spring Boot用户能快速接入北极星,本身提供了服务注册和发现功能。但是在运营过程中,发现以下问题:

  • 功能与Spring Cloud Tencent高度重复,且spring cloud tencent本身是松耦合架构,存量的Spring Boot用户也可以通过单独按需依赖spring cloud tencent的部分starter使用注册、限流、配置等能力。
  • Spring Boot版本繁多,各个版本之间存在不少差异,跟进每个版本并维护的成本较大。
  • 功能缺失较多,且底座功能缺失,比如@feign等标签都缺失,用户使用成本较大。

综合以上因素,计划在5月21日对spring-boot-polaris停止维护并归档,后续相关spring-boot-polaris的诉求由spring-cloud-tencent项目进行承接,如有建议可以在此时间前提出

support polaris ratelimit ability

What is the feature you want to add?

Why do you want to add this feature?

How to implement this feature?

Additional context
Add any other context or screenshots about the feature request here.

spring-boot-polaris能支持 自定义路由规则,熔断规则,限流规则

What is the feature you want to add?

spring-boot-polaris能支持 自定义路由规则,熔断规则,限流规则。

Why do you want to add this feature?

spring-boot-polaris进行服务路由,只支持namespace和service两种参数,无法扩展。

现阶段无法在一个service内做规则路由,只能通过创建多个service,增加了维护成本。

How to implement this feature?
需要PolarisTarget类支持上报 方法名,metadata等数据。
需要PolarisFeignClient 上报方法名等数据。
上述数据可以从polarisFeignOptions获取,可以从RequestTemplate获取。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.