Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
檀越@新空间
SpringCloudAlibaba
提交
db1f1669
S
SpringCloudAlibaba
项目概览
檀越@新空间
/
SpringCloudAlibaba
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SpringCloudAlibaba
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
db1f1669
编写于
2月 12, 2023
作者:
檀越@新空间
🐭
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix:获取实例
上级
210111cd
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
46 addition
and
16 deletion
+46
-16
nacos-server-consumer/src/main/java/com/kwan/springcloudalibaba/NacosConsumerApplication.java
...com/kwan/springcloudalibaba/NacosConsumerApplication.java
+12
-2
nacos-server-consumer/src/main/java/com/kwan/springcloudalibaba/controller/ConsumerUserController.java
...springcloudalibaba/controller/ConsumerUserController.java
+30
-13
nacos-server-consumer/src/main/resources/bootstrap.yml
nacos-server-consumer/src/main/resources/bootstrap.yml
+4
-1
未找到文件。
nacos-server-consumer/src/main/java/com/kwan/springcloudalibaba/NacosConsumerApplication.java
浏览文件 @
db1f1669
package
com.kwan.springcloudalibaba
;
package
com.kwan.springcloudalibaba
;
import
com.alibaba.cloud.nacos.ribbon.NacosRule
;
import
com.netflix.loadbalancer.IPing
;
import
com.netflix.loadbalancer.IRule
;
import
com.netflix.loadbalancer.IRule
;
import
com.netflix.loadbalancer.
RandomRule
;
import
com.netflix.loadbalancer.
PingUrl
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
;
...
@@ -26,11 +28,19 @@ public class NacosConsumerApplication {
...
@@ -26,11 +28,19 @@ public class NacosConsumerApplication {
@Bean
@Bean
public
IRule
randomRule
()
{
public
IRule
randomRule
()
{
return
new
RandomRule
();
//随机
return
new
NacosRule
();
//nacos的策略
// return new RandomRule(); //随机
//return new RoundRobinRule(); //轮训
//return new RoundRobinRule(); //轮训
//return new BestAvailableRule();
//return new BestAvailableRule();
//return new ZoneAvoidanceRule(); //新版本默认的策略
//return new ZoneAvoidanceRule(); //新版本默认的策略
}
}
@Bean
public
IPing
iping
()
{
return
new
PingUrl
();
}
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
NacosConsumerApplication
.
class
,
args
);
SpringApplication
.
run
(
NacosConsumerApplication
.
class
,
args
);
}
}
...
...
nacos-server-consumer/src/main/java/com/kwan/springcloudalibaba/controller/ConsumerUserController.java
浏览文件 @
db1f1669
...
@@ -14,26 +14,19 @@ import org.springframework.web.bind.annotation.RequestMapping;
...
@@ -14,26 +14,19 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
@RefreshScope
@RefreshScope
@RestController
@RestController
@RequestMapping
(
"/nacos/consumer"
)
@RequestMapping
(
"/nacos/consumer"
)
public
class
ConsumerUserController
{
public
class
ConsumerUserController
{
@Autowired
@Autowired
private
LoadBalancerClient
loadBalancerClient
;
private
LoadBalancerClient
loadBalancerClient
;
@Autowired
@Autowired
private
RestTemplate
restTemplate
;
private
RestTemplate
restTemplate
;
@Autowired
@Autowired
private
FeignUserService
computeClient
;
private
FeignUserService
computeClient
;
@Autowired
@Autowired
private
DiscoveryClient
discoveryClient
;
private
DiscoveryClient
discoveryClient
;
/**
/**
* 使用LoadBalanceClient和RestTemplate结合的方式来访问
* 使用LoadBalanceClient和RestTemplate结合的方式来访问
* http://127.0.0.1:8085/nacos/consumer/loadBalancerClient/1
* http://127.0.0.1:8085/nacos/consumer/loadBalancerClient/1
...
@@ -50,7 +43,6 @@ public class ConsumerUserController {
...
@@ -50,7 +43,6 @@ public class ConsumerUserController {
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
}
}
/**
/**
* 使用ip访问
* 使用ip访问
* http://127.0.0.1:8085/nacos/consumer/loadBalancerClientIp/1
* http://127.0.0.1:8085/nacos/consumer/loadBalancerClientIp/1
...
@@ -68,7 +60,6 @@ public class ConsumerUserController {
...
@@ -68,7 +60,6 @@ public class ConsumerUserController {
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
}
}
/**
/**
* 通过服务名进行负载均衡访问
* 通过服务名进行负载均衡访问
* http://127.0.0.1:8085/nacos/consumer/serverName/1
* http://127.0.0.1:8085/nacos/consumer/serverName/1
...
@@ -83,7 +74,6 @@ public class ConsumerUserController {
...
@@ -83,7 +74,6 @@ public class ConsumerUserController {
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
return
Result
.
ok
(
restTemplate
.
getForObject
(
url
,
Result
.
class
));
}
}
/**
/**
* feign调用
* feign调用
* http://127.0.0.1:8085/nacos/consumer/1
* http://127.0.0.1:8085/nacos/consumer/1
...
@@ -99,6 +89,35 @@ public class ConsumerUserController {
...
@@ -99,6 +89,35 @@ public class ConsumerUserController {
}
}
/**
* 获取服务实例的具体信息
* 如:实例个数
* 实例url
* 实例ip
* 实例在nacos中的定位信息
* http://127.0.0.1:8085/nacos/consumer/services/nacos-server-producer
*
* @param service
* @return
*/
@GetMapping
(
"/services/{service}"
)
public
Result
services
(
@PathVariable
String
service
)
{
return
Result
.
ok
(
discoveryClient
.
getInstances
(
service
));
}
/**
* 获取所有服务
* http://127.0.0.1:8085/nacos/consumer/services
*
* @return
*/
@GetMapping
(
"/services"
)
public
Result
services
()
{
System
.
out
.
println
(
discoveryClient
.
description
());
System
.
out
.
println
(
discoveryClient
.
getOrder
());
return
Result
.
ok
(
discoveryClient
.
getServices
());
}
/**
/**
* 获取配置的变量
* 获取配置的变量
*/
*/
...
@@ -106,6 +125,4 @@ public class ConsumerUserController {
...
@@ -106,6 +125,4 @@ public class ConsumerUserController {
public
Result
nameInfo
()
{
public
Result
nameInfo
()
{
return
Result
.
ok
();
return
Result
.
ok
();
}
}
}
}
\ No newline at end of file
nacos-server-consumer/src/main/resources/bootstrap.yml
浏览文件 @
db1f1669
...
@@ -30,4 +30,7 @@ spring:
...
@@ -30,4 +30,7 @@ spring:
file-extension
:
yaml
#文件类型
file-extension
:
yaml
#文件类型
group
:
DEV_GROUP
#组别
group
:
DEV_GROUP
#组别
namespace
:
e750dcd5-657b-489b-8d15-b7b71aa3e984
#命名空间
namespace
:
e750dcd5-657b-489b-8d15-b7b71aa3e984
#命名空间
refresh-enabled
:
true
#默认自动刷新
refresh-enabled
:
true
#默认自动刷新
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录