You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dave Syer
f9fb23d472
|
10 years ago | |
---|---|---|
spring-platform-netflix-core | 10 years ago | |
spring-platform-netflix-hystrix | ||
spring-platform-netflix-turbine | ||
spring-platform-netflix-zuul | 10 years ago | |
.gitignore | ||
.settings.xml | ||
.travis.yml | ||
README.md | ||
RUNNING.md | ||
pom.xml |
README.md
Ths project provides Netflix OSS integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms.
Eureka Clients
Example eureka client:
@Configuration
@ComponentScan
@EnableAutoConfiguration
@RestController
public class Application {
@RequestMapping("/")
public String home() {
return "Hello world";
}
public static void main(String[] args) {
new SpringApplicationBuilder(Application.class).web(true).run(args);
}
}
(i.e. utterly normal Spring Boot app). Configuration is required to locate the Eureka server. Example:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8080/v2/
default.defaultZone: http://localhost:8080/v2/
The default application name, virtual host and non-secure port are taken from the Environment
is
${spring.application.name}
, ${spring.application.name}.mydomain.net
and ${server.port}
respectively.
TODO List
- Example front end app (currently in sandbox)
- Example back end service (currently in sandbox)
- Use platform config
- Hystrix integration (hystrix-javanica)
- Feign use spring message converters
- Ribbon (static server list)
- Eureka boot app (Service registration)
- Eureka (apache -> tomcat) see https://github.com/cfregly/fluxcapacitor/wiki/NetflixOSS-FAQ#eureka-service-discovery-load-balancer and https://groups.google.com/forum/?fromgroups#!topic/eureka_netflix/g3p2r7gHnN0
- Archaius bridge to spring environment
- Ribbon (Client side load balancing) (Eureka integration)
- Remove need for *-eureka.properties
- Use spring boot values as defaults where appropriate
- Synchronous removal of service from eureka on shutdown
- Refresh log levels dynamically
- Router (Zuul) integrated using hystrix/ribbon/eureka
- Better observable example
- Distributed refresh environment via platform bus
- Metrics aggregation (turbine)
- Use Eureka for instance discovery rather than static list see https://github.com/Netflix/Turbine/blob/master/turbine-contrib/src/main/java/com/netflix/turbine/discovery/EurekaInstanceDiscovery.java
- Configure InstanceDiscovery.impl using auto config/config props