Skip to content

Commit 6aab3a7

Browse files
authored
Merge pull request #2 from javaerEric/master
添加了多版本控制的zookeeper示例
2 parents 9105050 + 1cdda8d commit 6aab3a7

File tree

20 files changed

+492
-7
lines changed

20 files changed

+492
-7
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
######################
44
/target/www/**
55
/notes/**
6+
**/target/
67

78
######################
89
# Node

spring-cloud-mult-version-samples/README.md

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
在使用多版本控制时,需要修改服务提供方和服务消费方,分别是application.yaml和pom.xml。
44

55
1、在服务提供方的application.yaml中添加versions属性,标明服务支持哪些版本。
6+
* eureka
67
```yaml
78
spring:
89
application:
@@ -20,8 +21,24 @@ eureka:
2021
metadata-map:
2122
versions: 1,2
2223
```
24+
* zookeeper
25+
```yaml
26+
spring:
27+
application:
28+
name: service-c
29+
cloud:
30+
zookeeper:
31+
connect-string: 127.0.0.1:2181
32+
discovery:
33+
register: true
34+
root: dev
35+
metadata:
36+
versions: 1,2
37+
server:
38+
port: 10101
39+
```
2340
24-
2、在服务消费方,只需要在pom.xml添加spring-cloud-starter-multi-version到pom.xml依赖中即可
41+
2、在服务消费方,只需要在pom.xml添加spring-cloud-starter-multi-version到pom.xml依赖中即可,eureka和zookeeper的依赖二选一。
2542
```xml
2643
<dependencies>
2744
<dependency>
@@ -32,10 +49,16 @@ eureka:
3249
<groupId>org.springframework.boot</groupId>
3350
<artifactId>spring-boot-starter-test</artifactId>
3451
</dependency>
52+
<!-- eureka作为注册中心时使用 -->
3553
<dependency>
3654
<groupId>org.springframework.cloud</groupId>
3755
<artifactId>spring-cloud-starter-eureka</artifactId>
3856
</dependency>
57+
<!-- zookeeper作为注册中心时使用 -->
58+
<dependency>
59+
<groupId>org.springframework.cloud</groupId>
60+
<artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
61+
</dependency>
3962
<dependency>
4063
<groupId>org.springframework.cloud</groupId>
4164
<artifactId>spring-cloud-starter-feign</artifactId>

spring-cloud-mult-version-samples/pom.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,11 @@
1414
<modules>
1515
<module>spring-cloud-bamboo-eureka-samples</module>
1616
<module>spring-cloud-bamboo-zuul-samples</module>
17+
<module>spring-cloud-bamboo-zuul-zookeeper-samples</module>
1718
<module>spring-cloud-bamboo-service-a-samples</module>
1819
<module>spring-cloud-bamboo-service-b-samples</module>
20+
<module>spring-cloud-bamboo-service-c-samples</module>
21+
<module>spring-cloud-bamboo-service-d-samples</module>
1922
</modules>
2023

2124
<build>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cn.springcloud.bamboo.service.a;
1+
package cn.springcloud.bamboo.service.c;
22

33
import org.slf4j.LoggerFactory;
44
import org.springframework.boot.autoconfigure.SpringBootApplication;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cn.springcloud.bamboo.service.a.web.rest;
1+
package cn.springcloud.bamboo.service.c.web.rest;
22

33
import com.google.common.collect.ImmutableMap;
44
import org.apache.commons.lang.StringUtils;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cn.springcloud.bamboo.service.b;
1+
package cn.springcloud.bamboo.service.d;
22

33
import org.slf4j.LoggerFactory;
44
import org.springframework.boot.autoconfigure.SpringBootApplication;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package cn.springcloud.bamboo.service.b.feign;
1+
package cn.springcloud.bamboo.service.d.feign;
22

33
import org.springframework.cloud.netflix.feign.FeignClient;
44
import org.springframework.web.bind.annotation.*;
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
package cn.springcloud.bamboo.service.b.rest;
1+
package cn.springcloud.bamboo.service.d.rest;
22

3-
import cn.springcloud.bamboo.service.b.feign.TestClient;
3+
import cn.springcloud.bamboo.service.d.feign.TestClient;
44
import com.google.common.collect.ImmutableMap;
55
import org.springframework.beans.factory.annotation.Autowired;
66
import org.springframework.util.StringUtils;
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<parent>
6+
<artifactId>spring-cloud-mult-version-samples</artifactId>
7+
<groupId>cn.springcloud.gray</groupId>
8+
<version>1.0.2</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>spring-cloud-bamboo-service-c-samples</artifactId>
13+
14+
<dependencies>
15+
<dependency>
16+
<groupId>org.springframework.boot</groupId>
17+
<artifactId>spring-boot-starter-web</artifactId>
18+
</dependency>
19+
<dependency>
20+
<groupId>org.springframework.boot</groupId>
21+
<artifactId>spring-boot-starter-test</artifactId>
22+
</dependency>
23+
<dependency>
24+
<groupId>org.springframework.cloud</groupId>
25+
<artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
26+
</dependency>
27+
</dependencies>
28+
29+
<build>
30+
<plugins>
31+
<plugin>
32+
<!--skip deploy -->
33+
<artifactId>maven-deploy-plugin</artifactId>
34+
<configuration>
35+
<skip>true</skip>
36+
</configuration>
37+
</plugin>
38+
</plugins>
39+
</build>
40+
</project>
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package cn.springcloud.bamboo.service.c;
2+
3+
import org.slf4j.LoggerFactory;
4+
import org.springframework.boot.autoconfigure.SpringBootApplication;
5+
import org.springframework.boot.builder.SpringApplicationBuilder;
6+
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
7+
import org.springframework.core.env.Environment;
8+
9+
import java.net.InetAddress;
10+
import java.net.UnknownHostException;
11+
12+
@SpringBootApplication
13+
@EnableDiscoveryClient
14+
public class BambooServiceCApplication {
15+
16+
private static final org.slf4j.Logger log = LoggerFactory.getLogger(BambooServiceCApplication.class);
17+
18+
19+
public static void main(String[] args) throws UnknownHostException {
20+
Environment env = new SpringApplicationBuilder(BambooServiceCApplication.class).web(true).run(args).getEnvironment();
21+
log.info(
22+
"\n----------------------------------------------------------\n\t"
23+
+ "Application '{}' is running! Access URLs:\n\t" + "Local: \t\thttp://127.0.0.1:{}\n\t"
24+
+ "External: \thttp://{}:{}\n----------------------------------------------------------",
25+
env.getProperty("spring.application.name"), env.getProperty("server.port"),
26+
InetAddress.getLocalHost().getHostAddress(), env.getProperty("server.port"));
27+
28+
String configServerStatus = env.getProperty("configserver.status");
29+
log.info(
30+
"\n----------------------------------------------------------\n\t"
31+
+ "Config Server: \t{}\n----------------------------------------------------------",
32+
configServerStatus == null ? "Not found or not setup for this application" : configServerStatus);
33+
}
34+
}

0 commit comments

Comments
 (0)