通过Nacos Service提供的服务发现接口:
curl -X GET "http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=sca-provider"
{
"name":"DEFAULT_GROUP@@sca-provider",
"groupName":"DEFAULT_GROUP",
"clusters":"",
"cacheMillis":10000,
"hosts":[
{
"instanceId":"10.244.0.18#18080#DEFAULT#DEFAULT_GROUP@@sca-provider",
"ip":"10.244.0.18",
"port":18080,
"weight":1,
"healthy":true,
"enabled":true,
"ephemeral":true,
"clusterName":"DEFAULT",
"serviceName":"DEFAULT_GROUP@@sca-provider",
"metadata":{
"dubbo.metadata-service.urls":"[ \"dubbo://10.244.0.18:20880/com.alibaba.cloud.dubbo.service.DubboMetadataService?anyhost=true&application=sca-provider&bind.ip=10.244.0.18&bind.port=20880&deprecated=false&dubbo=2.0.2&dynamic=true&generic=false&group=sca-provider&interface=com.alibaba.cloud.dubbo.service.DubboMetadataService&methods=getAllServiceKeys,getServiceRestMetadata,getExportedURLs,getAllExportedURLs&pid=8548&qos.enable=false&release=2.7.6&revision=2.2.1.RELEASE&side=provider×tamp=1642390851245&version=1.0.0\" ]",
"preserved.register.source":"SPRING_CLOUD",
"dubbo.protocols.
Spring Cloud Alibaba Nacos 服务发现源码解析

本文深入分析了Nacos如何通过HTTP接口获取服务实例的源码实现。首先,根据namespaceId和serviceName获取Service实例,然后从Service中获取所有服务提供者的实例信息,最后遍历并组装成JSON字符串返回。主要涉及InstanceController的list方法、Service的srvIPs方法以及Cluster的allIPs方法。
最低0.47元/天 解锁文章
1923

被折叠的 条评论
为什么被折叠?



