Commit d0f069c4 by 陈文顺

apollo 配置

parent 33f9833c
...@@ -59,18 +59,18 @@ ...@@ -59,18 +59,18 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.nepxion</groupId> <groupId>com.nepxion</groupId>
<!-- <artifactId>discovery-console-starter-apollo</artifactId> --> <artifactId>discovery-console-starter-apollo</artifactId>
<artifactId>discovery-console-starter-nacos</artifactId> <!--<artifactId>discovery-console-starter-nacos</artifactId>-->
<!-- <artifactId>discovery-console-starter-redis</artifactId> --> <!-- <artifactId>discovery-console-starter-redis</artifactId> -->
<version>${discovery.version}</version> <version>${discovery.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.cloud</groupId> <groupId>org.springframework.cloud</groupId>
<!-- <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> --> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<!-- <artifactId>spring-cloud-starter-consul-discovery</artifactId> --> <!-- <artifactId>spring-cloud-starter-consul-discovery</artifactId> -->
<!-- <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId> --> <!-- <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId> -->
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <!--<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>-->
</dependency> </dependency>
<dependency> <dependency>
......
...@@ -16,7 +16,7 @@ spring.cloud.zookeeper.discovery.root=/spring-cloud-service ...@@ -16,7 +16,7 @@ spring.cloud.zookeeper.discovery.root=/spring-cloud-service
spring.cloud.zookeeper.discovery.preferIpAddress=true spring.cloud.zookeeper.discovery.preferIpAddress=true
# Nacos config for discovery # Nacos config for discovery
spring.cloud.nacos.discovery.server-addr=localhost:8848 spring.cloud.nacos.discovery.server-addr=111.231.12.200:9010
# spring.cloud.nacos.discovery.namespace=discovery # spring.cloud.nacos.discovery.namespace=discovery
# Ribbon config # Ribbon config
...@@ -24,18 +24,18 @@ ribbon.ConnectTimeout=60000 ...@@ -24,18 +24,18 @@ ribbon.ConnectTimeout=60000
ribbon.ReadTimeout=60000 ribbon.ReadTimeout=60000
# Apollo config for rule # Apollo config for rule
apollo.portal-url=http://localhost:8088 apollo.portal-url=http://129.211.152.128
apollo.token=b26d851c635fd51ae21981443d7aa75f14d99e4e apollo.token=cd415f8abe42c880b9f881bccc888410b3a1081d
apollo.operator=apollo apollo.operator=apollo
# apollo.connect-timeout=1000 # apollo.connect-timeout=1000
# apollo.read-timeout=5000 # apollo.read-timeout=5000
apollo.plugin.app.id=discovery apollo.plugin.app.id=discovery
apollo.plugin.env=DEV apollo.plugin.env=DEV
# apollo.plugin.cluster=default # apollo.plugin.cluster=default
# apollo.plugin.namespace=application apollo.plugin.namespace=architect.gray.rule
# Nacos config for rule # Nacos config for rule
nacos.server-addr=localhost:8848 nacos.server-addr=111.231.12.200:9010
# nacos.plugin.namespace=application # nacos.plugin.namespace=application
# Redis config for rule # Redis config for rule
......
...@@ -59,17 +59,17 @@ ...@@ -59,17 +59,17 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.nepxion</groupId> <groupId>com.nepxion</groupId>
<!-- <artifactId>discovery-plugin-starter-eureka</artifactId> --> <artifactId>discovery-plugin-starter-eureka</artifactId>
<!-- <artifactId>discovery-plugin-starter-consul</artifactId> --> <!-- <artifactId>discovery-plugin-starter-consul</artifactId> -->
<!-- <artifactId>discovery-plugin-starter-zookeeper</artifactId> --> <!-- <artifactId>discovery-plugin-starter-zookeeper</artifactId> -->
<artifactId>discovery-plugin-starter-nacos</artifactId> <!--<artifactId>discovery-plugin-starter-nacos</artifactId>-->
<version>${discovery.version}</version> <version>${discovery.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.nepxion</groupId> <groupId>com.nepxion</groupId>
<!-- <artifactId>discovery-plugin-config-center-starter-apollo</artifactId> --> <artifactId>discovery-plugin-config-center-starter-apollo</artifactId>
<artifactId>discovery-plugin-config-center-starter-nacos</artifactId> <!--<artifactId>discovery-plugin-config-center-starter-nacos</artifactId>-->
<!-- <artifactId>discovery-plugin-config-center-starter-redis</artifactId> --> <!-- <artifactId>discovery-plugin-config-center-starter-redis</artifactId> -->
<version>${discovery.version}</version> <version>${discovery.version}</version>
</dependency> </dependency>
......
...@@ -9,6 +9,7 @@ package com.nepxion.discovery.plugin.example.service; ...@@ -9,6 +9,7 @@ package com.nepxion.discovery.plugin.example.service;
* @version 1.0 * @version 1.0
*/ */
import com.ctrip.framework.apollo.spring.annotation.EnableApolloConfig;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.builder.SpringApplicationBuilder;
...@@ -34,9 +35,11 @@ import com.nepxion.discovery.plugin.strategy.service.aop.RestTemplateStrategyInt ...@@ -34,9 +35,11 @@ import com.nepxion.discovery.plugin.strategy.service.aop.RestTemplateStrategyInt
@EnableFeignClients @EnableFeignClients
// Hystrix测试 // Hystrix测试
// @EnableCircuitBreaker // @EnableCircuitBreaker
//@EnableApolloConfig(value = {"application"},order = 0)
public class DiscoveryApplicationA1 { public class DiscoveryApplicationA1 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "a1"); System.setProperty("spring.profiles.active", "a1");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationA1.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationA1.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationA2 { public class DiscoveryApplicationA2 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "a2"); System.setProperty("spring.profiles.active", "a2");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationA2.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationA2.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationB1 { public class DiscoveryApplicationB1 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "b1"); System.setProperty("spring.profiles.active", "b1");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationB1.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationB1.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationB2 { public class DiscoveryApplicationB2 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "b2"); System.setProperty("spring.profiles.active", "b2");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationB2.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationB2.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationC1 { public class DiscoveryApplicationC1 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "c1"); System.setProperty("spring.profiles.active", "c1");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationC1.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationC1.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationC2 { public class DiscoveryApplicationC2 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "c2"); System.setProperty("spring.profiles.active", "c2");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationC2.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationC2.class).run(args);
} }
......
...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; ...@@ -20,6 +20,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
public class DiscoveryApplicationC3 { public class DiscoveryApplicationC3 {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("spring.profiles.active", "c3"); System.setProperty("spring.profiles.active", "c3");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationC3.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationC3.class).run(args);
} }
......
...@@ -11,9 +11,14 @@ package com.nepxion.discovery.plugin.example.service.rest; ...@@ -11,9 +11,14 @@ package com.nepxion.discovery.plugin.example.service.rest;
import java.util.Enumeration; import java.util.Enumeration;
import com.ctrip.framework.apollo.Config;
import com.ctrip.framework.apollo.ConfigService;
import com.nepxion.discovery.plugin.framework.adapter.PluginAdapter;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.http.HttpEntity; import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
...@@ -29,6 +34,8 @@ import com.alibaba.csp.sentinel.slots.block.BlockException; ...@@ -29,6 +34,8 @@ import com.alibaba.csp.sentinel.slots.block.BlockException;
import com.nepxion.discovery.common.constant.DiscoveryConstant; import com.nepxion.discovery.common.constant.DiscoveryConstant;
import com.nepxion.discovery.plugin.strategy.service.context.ServiceStrategyContextHolder; import com.nepxion.discovery.plugin.strategy.service.context.ServiceStrategyContextHolder;
import javax.validation.Valid;
@RestController @RestController
@ConditionalOnProperty(name = DiscoveryConstant.SPRING_APPLICATION_NAME, havingValue = "discovery-springcloud-example-a") @ConditionalOnProperty(name = DiscoveryConstant.SPRING_APPLICATION_NAME, havingValue = "discovery-springcloud-example-a")
public class ARestImpl extends AbstractRestImpl { public class ARestImpl extends AbstractRestImpl {
...@@ -40,9 +47,13 @@ public class ARestImpl extends AbstractRestImpl { ...@@ -40,9 +47,13 @@ public class ARestImpl extends AbstractRestImpl {
@Autowired @Autowired
private ServiceStrategyContextHolder serviceStrategyContextHolder; private ServiceStrategyContextHolder serviceStrategyContextHolder;
@Autowired
private PluginAdapter pluginAdapter;
@RequestMapping(path = "/rest", method = RequestMethod.POST) @RequestMapping(path = "/rest", method = RequestMethod.POST)
@SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback") // @SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback")
public String rest(@RequestBody String value) { public String rest(@RequestBody String value) {
LOG.info("调用开始{}",System.currentTimeMillis());
value = doRest(value); value = doRest(value);
// Just for testing // Just for testing
...@@ -71,13 +82,36 @@ public class ARestImpl extends AbstractRestImpl { ...@@ -71,13 +82,36 @@ public class ARestImpl extends AbstractRestImpl {
return value; return value;
} }
@Autowired
Config config;
@Value("${eureka.instance.metadataMap.region}")
String region;
@RequestMapping(path = "/test", method = RequestMethod.POST) @RequestMapping(path = "/test", method = RequestMethod.POST)
public String test(@RequestBody String value) { public String test(@RequestBody String value) {
try { String serviceId = pluginAdapter.getServiceId();
Thread.sleep(5000); String host = pluginAdapter.getHost();
} catch (Exception e) { int port = pluginAdapter.getPort();
e.printStackTrace(); String version = pluginAdapter.getVersion();
String region = pluginAdapter.getRegion();
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("haha gray" + " -> " + serviceId);
stringBuilder.append("[" + host + ":" + port + "]");
if (StringUtils.isNotEmpty(version)) {
stringBuilder.append("[V" + version + "]");
}
if (StringUtils.isNotEmpty(region)) {
stringBuilder.append("[Region=" + region + "]");
} }
Config configa = ConfigService.getConfig("application");
LOG.info(">>>>>>>>>>>>>>>> {} config:{}",stringBuilder.toString(),config.getProperty("eureka.instance.metadataMap.region","xxxx"));
// try {
// Thread.sleep(5000);
// } catch (Exception e) {
// e.printStackTrace();
// }
return value; return value;
} }
......
...@@ -41,7 +41,7 @@ public class BRestImpl extends AbstractRestImpl { ...@@ -41,7 +41,7 @@ public class BRestImpl extends AbstractRestImpl {
private ServiceStrategyContextHolder serviceStrategyContextHolder; private ServiceStrategyContextHolder serviceStrategyContextHolder;
@RequestMapping(path = "/rest", method = RequestMethod.POST) @RequestMapping(path = "/rest", method = RequestMethod.POST)
@SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback") // @SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback")
public String rest(@RequestBody String value) { public String rest(@RequestBody String value) {
value = doRest(value); value = doRest(value);
......
...@@ -35,7 +35,7 @@ public class CRestImpl extends AbstractRestImpl { ...@@ -35,7 +35,7 @@ public class CRestImpl extends AbstractRestImpl {
private ServiceStrategyContextHolder serviceStrategyContextHolder; private ServiceStrategyContextHolder serviceStrategyContextHolder;
@RequestMapping(path = "/rest", method = RequestMethod.POST) @RequestMapping(path = "/rest", method = RequestMethod.POST)
@SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback") // @SentinelResource(value = "sentinel-resource", blockHandler = "handleBlock", fallback = "handleFallback")
public String rest(@RequestBody String value) { public String rest(@RequestBody String value) {
value = doRest(value); value = doRest(value);
......
...@@ -7,18 +7,25 @@ eureka.instance.metadataMap.group=example-service-group ...@@ -7,18 +7,25 @@ eureka.instance.metadataMap.group=example-service-group
eureka.instance.metadataMap.version=1.0 eureka.instance.metadataMap.version=1.0
eureka.instance.metadataMap.region=dev eureka.instance.metadataMap.region=dev
# Consul config for discovery ## Consul config for discovery
spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev #spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev
#
# Zookeeper config for discovery ## Zookeeper config for discovery
spring.cloud.zookeeper.discovery.metadata.group=example-service-group #spring.cloud.zookeeper.discovery.metadata.group=example-service-group
spring.cloud.zookeeper.discovery.metadata.version=1.0 #spring.cloud.zookeeper.discovery.metadata.version=1.0
spring.cloud.zookeeper.discovery.metadata.region=dev #spring.cloud.zookeeper.discovery.metadata.region=dev
#
# Nacos config for discovery ## Nacos config for discovery
spring.cloud.nacos.discovery.metadata.group=example-service-group #spring.cloud.nacos.discovery.metadata.group=example-service-group
spring.cloud.nacos.discovery.metadata.version=1.0 #spring.cloud.nacos.discovery.metadata.version=1.0
spring.cloud.nacos.discovery.metadata.region=dev #spring.cloud.nacos.discovery.metadata.region=dev
# Admin config # Admin config
management.server.port=5100 management.server.port=5100
\ No newline at end of file
# Apollo config for rule
app.id=discovery-springcloud-example-a
apollo.meta=http://localhost:8080
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application
apollo.plugin.namespace=architect.gray.rule
\ No newline at end of file
...@@ -7,18 +7,25 @@ eureka.instance.metadataMap.group=example-service-group ...@@ -7,18 +7,25 @@ eureka.instance.metadataMap.group=example-service-group
eureka.instance.metadataMap.version=1.1 eureka.instance.metadataMap.version=1.1
eureka.instance.metadataMap.region=qa eureka.instance.metadataMap.region=qa
# Consul config for discovery ## Consul config for discovery
spring.cloud.consul.discovery.tags=group=example-service-group,version=1.1,region=qa #spring.cloud.consul.discovery.tags=group=example-service-group,version=1.1,region=qa
#
# Zookeeper config for discovery ## Zookeeper config for discovery
spring.cloud.zookeeper.discovery.metadata.group=example-service-group #spring.cloud.zookeeper.discovery.metadata.group=example-service-group
spring.cloud.zookeeper.discovery.metadata.version=1.1 #spring.cloud.zookeeper.discovery.metadata.version=1.1
spring.cloud.zookeeper.discovery.metadata.region=qa #spring.cloud.zookeeper.discovery.metadata.region=qa
#
# Nacos config for discovery ## Nacos config for discovery
spring.cloud.nacos.discovery.metadata.group=example-service-group #spring.cloud.nacos.discovery.metadata.group=example-service-group
spring.cloud.nacos.discovery.metadata.version=1.1 #spring.cloud.nacos.discovery.metadata.version=1.1
spring.cloud.nacos.discovery.metadata.region=qa #spring.cloud.nacos.discovery.metadata.region=qa
# Admin config # Admin config
management.server.port=5101 management.server.port=5101
\ No newline at end of file
# Apollo config for rule
app.id=discovery-springcloud-example-a
apollo.meta=http://localhost:8080
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application
apollo.plugin.namespace=architect.gray.rule
\ No newline at end of file
...@@ -8,17 +8,24 @@ eureka.instance.metadataMap.version=1.0 ...@@ -8,17 +8,24 @@ eureka.instance.metadataMap.version=1.0
eureka.instance.metadataMap.region=dev eureka.instance.metadataMap.region=dev
# Consul config for discovery # Consul config for discovery
spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev #spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev
#
# Zookeeper config for discovery ## Zookeeper config for discovery
spring.cloud.zookeeper.discovery.metadata.group=example-service-group #spring.cloud.zookeeper.discovery.metadata.group=example-service-group
spring.cloud.zookeeper.discovery.metadata.version=1.0 #spring.cloud.zookeeper.discovery.metadata.version=1.0
spring.cloud.zookeeper.discovery.metadata.region=dev #spring.cloud.zookeeper.discovery.metadata.region=dev
#
# Nacos config for discovery ## Nacos config for discovery
spring.cloud.nacos.discovery.metadata.group=example-service-group #spring.cloud.nacos.discovery.metadata.group=example-service-group
spring.cloud.nacos.discovery.metadata.version=1.0 #spring.cloud.nacos.discovery.metadata.version=1.0
spring.cloud.nacos.discovery.metadata.region=dev #spring.cloud.nacos.discovery.metadata.region=dev
# Admin config # Admin config
management.server.port=5200 management.server.port=5200
\ No newline at end of file
# apollo
app.id=discovery-springcloud-example-b
apollo.meta=http://localhost:8080
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application
apollo.plugin.namespace=architect.gray.rule
\ No newline at end of file
...@@ -21,4 +21,11 @@ spring.cloud.nacos.discovery.metadata.version=1.1 ...@@ -21,4 +21,11 @@ spring.cloud.nacos.discovery.metadata.version=1.1
spring.cloud.nacos.discovery.metadata.region=qa spring.cloud.nacos.discovery.metadata.region=qa
# Admin config # Admin config
management.server.port=5201 management.server.port=5201
\ No newline at end of file
# apollo
app.id=discovery-springcloud-example-b
apollo.meta=http://localhost:8080
apollo.bootstrap.enabled=true
#apollo.bootstrap.namespaces=application
apollo.plugin.namespace=architect.gray.rule
\ No newline at end of file
...@@ -7,18 +7,26 @@ eureka.instance.metadataMap.group=example-service-group ...@@ -7,18 +7,26 @@ eureka.instance.metadataMap.group=example-service-group
eureka.instance.metadataMap.version=1.0 eureka.instance.metadataMap.version=1.0
eureka.instance.metadataMap.region=dev eureka.instance.metadataMap.region=dev
# Consul config for discovery ## Consul config for discovery
spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev #spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0,region=dev
#
## Zookeeper config for discovery
#spring.cloud.zookeeper.discovery.metadata.group=example-service-group
#spring.cloud.zookeeper.discovery.metadata.version=1.0
#spring.cloud.zookeeper.discovery.metadata.region=dev
#
## Nacos config for discovery
#spring.cloud.nacos.discovery.metadata.group=example-service-group
#spring.cloud.nacos.discovery.metadata.version=1.0
#spring.cloud.nacos.discovery.metadata.region=dev
# Zookeeper config for discovery # Admin config
spring.cloud.zookeeper.discovery.metadata.group=example-service-group management.server.port=5300
spring.cloud.zookeeper.discovery.metadata.version=1.0
spring.cloud.zookeeper.discovery.metadata.region=dev
# Nacos config for discovery
spring.cloud.nacos.discovery.metadata.group=example-service-group
spring.cloud.nacos.discovery.metadata.version=1.0
spring.cloud.nacos.discovery.metadata.region=dev
# Admin config # apollo
management.server.port=5300 app.id=discovery-springcloud-example-c
\ No newline at end of file apollo.meta=http://localhost:8080
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application
apollo.plugin.namespace=architect.gray.rule
\ No newline at end of file
# Spring cloud config # Spring cloud config
# server.servlet.context-path=/nepxion # server.servlet.context-path=/nepxion
spring.mvc.servlet.load-on-startup=1
# Eureka config for discovery # Eureka config for discovery
eureka.client.serviceUrl.defaultZone=http://localhost:9528/eureka/ eureka.client.serviceUrl.defaultZone=http://localhost:9528/eureka/
...@@ -27,10 +28,7 @@ ribbon.ReadTimeout=60000 ...@@ -27,10 +28,7 @@ ribbon.ReadTimeout=60000
# 支持G版,FeignClientSpecification的问题 # 支持G版,FeignClientSpecification的问题
spring.main.allow-bean-definition-overriding=true spring.main.allow-bean-definition-overriding=true
# Apollo config for rule
app.id=discovery
apollo.meta=http://localhost:8080
# apollo.plugin.namespace=application
# Nacos config for rule # Nacos config for rule
nacos.server-addr=localhost:8848 nacos.server-addr=localhost:8848
......
{
"registerEntity": {
"hostFilterEntity": {
"filterType": "BLACKLIST",
"filterValueList": [
"10.10",
"11.11"
],
"filterMap": {
"discovery-springcloud-example-a": [
"172.16"
]
}
},
"countFilterEntity": {
"filterValue": 10000,
"filterMap": {
"discovery-springcloud-example-a": 5000
}
}
},
"discoveryEntity": {
"hostFilterEntity": {
"filterType": "BLACKLIST",
"filterValueList": [
"10.10",
"11.11"
],
"filterMap": {
"discovery-springcloud-example-b": [
"172.16"
]
}
},
"versionFilterEntity": {
"versionEntityMap": {
"discovery-springcloud-example-a": [
{
"consumerServiceName": "discovery-springcloud-example-a",
"providerServiceName": "discovery-springcloud-example-b",
"consumerVersionValueList": [
"1.0"
],
"providerVersionValueList": [
"1.0"
]
},
{
"consumerServiceName": "discovery-springcloud-example-a",
"providerServiceName": "discovery-springcloud-example-b",
"consumerVersionValueList": [
"1.1"
],
"providerVersionValueList": [
"1.1"
]
}
],
"discovery-springcloud-example-b": [
{
"consumerServiceName": "discovery-springcloud-example-b",
"providerServiceName": "discovery-springcloud-example-c",
"consumerVersionValueList": [
"1.0"
],
"providerVersionValueList": [
"1.0",
"1.1"
]
},
{
"consumerServiceName": "discovery-springcloud-example-b",
"providerServiceName": "discovery-springcloud-example-c",
"consumerVersionValueList": [
"1.1"
],
"providerVersionValueList": [
"1.2"
]
}
]
}
},
"weightFilterEntity": {
"weightEntityMap": {
"discovery-springcloud-example-b": [
{
"consumerServiceName": "discovery-springcloud-example-b",
"providerServiceName": "discovery-springcloud-example-c",
"weightMap": {
"1.0": 90,
"1.1": 10
}
}
],
"": [
{
"consumerServiceName": "",
"providerServiceName": "discovery-springcloud-example-c",
"weightMap": {
"1.0": 80,
"1.1": 20
}
}
]
},
"regionWeightEntity": {
"weightMap": {
"dev": 85,
"qa": 15
}
}
}
},
"strategyEntity": {
"versionValue": "{\"discovery-springcloud-example-a\":\"1.0\", \"discovery-springcloud-example-b\":\"1.0\", \"discovery-springcloud-example-c\":\"1.0;1.2\"}",
"regionValue": "{\"discovery-springcloud-example-a\":\"qa;dev\", \"discovery-springcloud-example-b\":\"dev\", \"discovery-springcloud-example-c\":\"qa\"}",
"addressValue": "{\"discovery-springcloud-example-a\":\"192.168.43.101:1100\", \"discovery-springcloud-example-b\":\"192.168.43.101:1201\", \"discovery-springcloud-example-c\":\"192.168.43.101:1300\"}"
},
"customizationEntity": {
"customizationMap": {
"discovery-springcloud-example-a": {
"database": "qa"
},
"discovery-springcloud-example-c": {
"database": "prod"
}
}
}
}
\ No newline at end of file
...@@ -59,17 +59,17 @@ ...@@ -59,17 +59,17 @@
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.nepxion</groupId> <groupId>com.nepxion</groupId>
<!-- <artifactId>discovery-plugin-starter-eureka</artifactId> --> <artifactId>discovery-plugin-starter-eureka</artifactId>
<!-- <artifactId>discovery-plugin-starter-consul</artifactId> --> <!-- <artifactId>discovery-plugin-starter-consul</artifactId> -->
<!-- <artifactId>discovery-plugin-starter-zookeeper</artifactId> --> <!-- <artifactId>discovery-plugin-starter-zookeeper</artifactId> -->
<artifactId>discovery-plugin-starter-nacos</artifactId> <!--<artifactId>discovery-plugin-starter-nacos</artifactId>-->
<version>${discovery.version}</version> <version>${discovery.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.nepxion</groupId> <groupId>com.nepxion</groupId>
<!-- <artifactId>discovery-plugin-config-center-starter-apollo</artifactId> --> <artifactId>discovery-plugin-config-center-starter-apollo</artifactId>
<artifactId>discovery-plugin-config-center-starter-nacos</artifactId> <!--<artifactId>discovery-plugin-config-center-starter-nacos</artifactId>-->
<!-- <artifactId>discovery-plugin-config-center-starter-redis</artifactId> --> <!-- <artifactId>discovery-plugin-config-center-starter-redis</artifactId> -->
<version>${discovery.version}</version> <version>${discovery.version}</version>
</dependency> </dependency>
......
...@@ -23,6 +23,7 @@ import com.nepxion.discovery.plugin.strategy.zuul.filter.ZuulStrategyRouteFilter ...@@ -23,6 +23,7 @@ import com.nepxion.discovery.plugin.strategy.zuul.filter.ZuulStrategyRouteFilter
@EnableZuulProxy @EnableZuulProxy
public class DiscoveryApplicationZuul { public class DiscoveryApplicationZuul {
public static void main(String[] args) { public static void main(String[] args) {
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationZuul.class).run(args); new SpringApplicationBuilder(DiscoveryApplicationZuul.class).run(args);
} }
...@@ -31,7 +32,7 @@ public class DiscoveryApplicationZuul { ...@@ -31,7 +32,7 @@ public class DiscoveryApplicationZuul {
return new ZuulStrategyRouteFilter(); return new ZuulStrategyRouteFilter();
} }
@Bean // @Bean
public MyDiscoveryEnabledStrategy myDiscoveryEnabledStrategy() { public MyDiscoveryEnabledStrategy myDiscoveryEnabledStrategy() {
return new MyDiscoveryEnabledStrategy(); return new MyDiscoveryEnabledStrategy();
} }
......
package com.nepxion.discovery.plugin.example.zuul;
/**
* <p>Title: Nepxion Discovery</p>
* <p>Description: Nepxion Discovery</p>
* <p>Copyright: Copyright (c) 2017-2050</p>
* <p>Company: Nepxion</p>
* @author Haojun Ren
* @version 1.0
*/
import com.nepxion.discovery.plugin.example.zuul.impl.MyDiscoveryEnabledStrategy;
import com.nepxion.discovery.plugin.strategy.zuul.filter.ZuulStrategyRouteFilter;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
@EnableDiscoveryClient
@EnableZuulProxy
public class DiscoveryApplicationZuul2 {
public static void main(String[] args) {
System.setProperty("spring.profiles.active", "g2");
System.setProperty("apollo.configService","http://212.129.229.203" );
new SpringApplicationBuilder(DiscoveryApplicationZuul2.class).run(args);
}
// @Bean
public ZuulStrategyRouteFilter zuulStrategyRouteFilter() {
return new ZuulStrategyRouteFilter();
}
// @Bean
public MyDiscoveryEnabledStrategy myDiscoveryEnabledStrategy() {
return new MyDiscoveryEnabledStrategy();
}
}
\ No newline at end of file
# Spring cloud config
spring.application.name=discovery-springcloud-example-zuul
server.port=1401
# Eureka config for discovery
eureka.instance.metadataMap.group=example-service-group
eureka.instance.metadataMap.version=1.0
## Consul config for discovery
#spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0
#
## Zookeeper config for discovery
#spring.cloud.zookeeper.discovery.metadata.group=example-service-group
#spring.cloud.zookeeper.discovery.metadata.version=1.0
#
## Nacos config for discovery
#spring.cloud.nacos.discovery.metadata.group=example-service-group
#spring.cloud.nacos.discovery.metadata.version=1.0
# Admin config
management.server.port=5401
# Zuul config
#zuul.routes.discovery-springcloud-example-a.path=/discovery-springcloud-example-a/**
#zuul.routes.discovery-springcloud-example-a.serviceId=discovery-springcloud-example-a
# zuul.ribbon-isolation-strategy=THREAD
\ No newline at end of file
...@@ -6,21 +6,21 @@ server.port=1400 ...@@ -6,21 +6,21 @@ server.port=1400
eureka.instance.metadataMap.group=example-service-group eureka.instance.metadataMap.group=example-service-group
eureka.instance.metadataMap.version=1.0 eureka.instance.metadataMap.version=1.0
# Consul config for discovery ## Consul config for discovery
spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0 #spring.cloud.consul.discovery.tags=group=example-service-group,version=1.0
#
# Zookeeper config for discovery ## Zookeeper config for discovery
spring.cloud.zookeeper.discovery.metadata.group=example-service-group #spring.cloud.zookeeper.discovery.metadata.group=example-service-group
spring.cloud.zookeeper.discovery.metadata.version=1.0 #spring.cloud.zookeeper.discovery.metadata.version=1.0
#
# Nacos config for discovery ## Nacos config for discovery
spring.cloud.nacos.discovery.metadata.group=example-service-group #spring.cloud.nacos.discovery.metadata.group=example-service-group
spring.cloud.nacos.discovery.metadata.version=1.0 #spring.cloud.nacos.discovery.metadata.version=1.0
# Admin config # Admin config
management.server.port=5400 management.server.port=5400
# Zuul config # Zuul config
zuul.routes.discovery-springcloud-example-a.path=/discovery-springcloud-example-a/** #zuul.routes.discovery-springcloud-example-a.path=/discovery-springcloud-example-a/**
zuul.routes.discovery-springcloud-example-a.serviceId=discovery-springcloud-example-a #zuul.routes.discovery-springcloud-example-a.serviceId=discovery-springcloud-example-a
# zuul.ribbon-isolation-strategy=THREAD # zuul.ribbon-isolation-strategy=THREAD
\ No newline at end of file
...@@ -26,7 +26,7 @@ ribbon.ReadTimeout=60000 ...@@ -26,7 +26,7 @@ ribbon.ReadTimeout=60000
# Apollo config for rule # Apollo config for rule
app.id=discovery app.id=discovery
apollo.meta=http://localhost:8080 apollo.meta=http://localhost:8080
# apollo.plugin.namespace=application apollo.plugin.namespace=architect.gray.rule
# Nacos config for rule # Nacos config for rule
nacos.server-addr=localhost:8848 nacos.server-addr=localhost:8848
......
{
"discoveryEntity": {
"versionFilterEntity": {
"versionEntityMap": {
"discovery-springcloud-example-zuul": [
{
"consumerServiceName": "discovery-springcloud-example-zuul",
"providerServiceName": "discovery-springcloud-example-a",
"consumerVersionValueList": [
"1.0"
],
"providerVersionValueList": [
"1.0"
]
},
{
"consumerServiceName": "discovery-springcloud-example-zuul",
"providerServiceName": "discovery-springcloud-example-a",
"consumerVersionValueList": [
"1.1"
],
"providerVersionValueList": [
"1.1"
]
}
]
}
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<rule>
<discovery>
<version>
<!-- 表示网关z的1.0,允许访问提供端服务a的1.0版本 -->
<service consumer-service-name="discovery-springcloud-example-zuul" provider-service-name="discovery-springcloud-example-a" consumer-version-value="1.0" provider-version-value="1.0"/>
<!-- 表示网关z的1.1,允许访问提供端服务a的1.1版本 -->
<service consumer-service-name="discovery-springcloud-example-zuul" provider-service-name="discovery-springcloud-example-a" consumer-version-value="1.1" provider-version-value="1.1"/>
</version>
</discovery>
</rule>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment