开发者社区 > 云原生 > 正文

无法从javasdk获取服务元数据?

Nacos服务有一个名为元数据的字段,可以在提供的Nacos控制台上查看和更新。 Bug我发现,在最新的SDK中,使用方法namingMaintainService queryService(String serviceName,String groupName),响应中没有任何关于字段为空的元数据的信息。 我对此感到非常困惑。 此外,我想订阅一个服务,以便在服务元数据更改时收到通知(回调)。

预期行为

1、期望使用提供的sdk获取服务元

2、期望订阅服务,以便在服务元发生更改时得到注意。

日志:

Service service1 = new Service();
service1.setAppName("AppName");
service1.setName("serviceName");
service1.setProtectThreshold(1.0F);
Map<String, String> map = new HashMap<>();
map.put("kk", "vv");
map.put("cc", "dd");
map.put("route", "zone");
map.put("raft", "true");
service1.setMetadata(map);
namingMain.createService(service1, new NoneSelector());//注册service


Service service = namingMain.queryService("test", "group");
System.out.println(service.toString());
System.out.println(new Gson().toJson(service.getMetadata()));`

原提问者GitHub用户wangdongyun

展开
收起
学习娃 2023-05-22 16:27:35 91 0
1 条回答
写回答
取消 提交回答
  • 是的,您应该关注应用程序的实例元数据。服务元数据是为管理员设计的,而不是为消费者设计的。

    原回答者GitHub用户KomachiSion

    2023-05-23 09:43:41
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载