Closed skyjilygao closed 5 years ago
@skyjilygao 就是在 ZK 上创建一个节点 /dubbo/config/dubbo/dubbo.properties
, 并设置其内容为:
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.metadata-report.address=zookeeper://127.0.0.1:2181
项目第一次启动调试的时候, 如果 ZK 没有这个配置, 会看不到元数据, 可以在 org.apache.dubbo.admin.config.ConfigCenter
中添加以下代码来创建这个节点(也可以通过其他方式):
@PostConstruct
public void init() throws Exception {
CuratorFramework zkClient = CuratorFrameworkFactory.builder().
connectString("127.0.0.1:2181").
retryPolicy(new ExponentialBackoffRetry(1000, 3)).build();
zkClient.start();
if (zkClient.checkExists().forPath("/dubbo/config/dubbo/dubbo.properties") == null) {
zkClient.create().creatingParentsIfNeeded().forPath("/dubbo/config/dubbo/dubbo.properties");
}
zkClient.setData().forPath("/dubbo/config/dubbo/dubbo.properties", ("dubbo.registry.address=zookeeper://127.0.0.1:2181\n" +
"dubbo.metadata-report.address=zookeeper://127.0.0.1:2181").getBytes());
}
类似这样:
如果要提交 PR, 记得不要提交这段代码 :)
@kezhenxu94 谢谢你的回答,我按照你说的做了。加了那段代码。在amdin后台配置管理也显示了配置。如下: 但是我在服务查询中点击服务详情还是不显示元数据。如下: 我在dubbo-admin的application.properties中配置了dubbo.configcenter="zookeeper://127.0.0.1:2181" 也不行。 请问是还要在其他地方配置吗?谢谢
@skyjilygao 你的Dubbo提供者是2.7版本的吗
@skyjilygao 元数据只有2.7及以上的版本支持,另外按照你这个配置,provider 端也要配置
dubbo.configcenter="zookeeper://127.0.0.1:2181
如果还不行,麻烦把你完整的 provider 链接发一下
@kezhenxu94 是在提供者端依赖对吧,
之前用的2.6.6,改用这个再启动的时候报错,总是找不到
ClassNotFoundException: com.alibaba.dubbo.common.Version
但是也没地方引用啊,很奇怪。
请问你有遇到过吗?
@kexianjun 换成2.7,起不来了居然。 依赖: 报错信息: 请问你有遇到过吗?
@kexianjun 换成2.7,起不来了居然。 依赖: 报错信息: 请问你有遇到过吗?
@skyjilygao 2.7 以后包名从 com.alibaba 改成 org.apache 了, 代码要做相关修改, 或者引入兼容包
@kezhenxu94 我改了。 因为就是一个demo,所以就引了一个@service注解,其他地方没有。 然后你说的这个兼容包,是哪个?能告诉一下吗?
@kezhenxu94 我改了。 因为就是一个demo,所以就引了一个@service注解,其他地方没有。 然后你说的这个兼容包,是哪个?能告诉一下吗?
把 demo 项目上传到GitHub吧
@kezhenxu94 好的好的,谢谢。 这个是地址:https://github.com/skyjilygao/dubbo-parent.git 我在依赖有这个,有没有可能是这个导致的。
com.alibaba.boot dubbo-spring-boot-starter 0.2.1-SNAPSHOT
麻烦看下,谢谢。
@kezhenxu94 我把这个dubbo-spring-boot-starter依赖去了就能起来了。但是不知道咋回事,后台看不到服务了。
@kezhenxu94 可以了。还是依赖dubbo-spring-boot-starter的问题。改成以下依赖就不报错了。
org.apache.dubbo dubbo-spring-boot-starter 2.7.0 然后元数据也出来了。 谢谢!
为什么我找不到 这个jar包```
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.7.0</version>
</dependency>```
@wendongbao 是不是依赖有问题,可以把mvn库里的删除,重新依赖。这是依赖地址:https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-spring-boot-starter/2.7.0
要想使用dubbo admin 中的服务测试功能,provider和admin 中的group只能是默认的dubbo ? 如果自定义分组的话,元数据会找不到?
跟楼上同问,dubbo admin中的测试和元数据不支持自定义group么?我用默认的dubbo分组可以显示,自定义的不行。
是在这里配置哦
@skyjilygao就是在ZK上创建一个节点
/dubbo/config/dubbo/dubbo.properties
,并设置其内容为:dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.metadata-report.address=zookeeper://127.0.0.1:2181
项目第一次启动调试的时候,如果ZK没有这个配置,会看不到元数据,可以在
org.apache.dubbo.admin.config.ConfigCenter
中添加以下代码来创建这个节点(也可以通过其他方式):@PostConstruct public void init()抛出异常 { CuratorFramework zkClient = CuratorFrameworkFactory 。builder()。 connectString(“ 127.0.0.1:2181 ”)。 retryPolicy(新 ExponentialBackoffRetry(1000,3)) 。建立(); zkClient 。开始(); 如果(zkClient 。 checkExists() 。 forPath( “ /dubbo/config/dubbo/dubbo.properties “)== 空){ zkClient 。创建() 。 creatingParentsIfNeeded() 。 forPath( ” /dubbo/config/dubbo/dubbo.properties “); } zkClient 。使用setData() 。 forPath(“/ dubbo/config/dubbo/dubbo.properties ”,(“ dubbo.registry.address = zookeeper://127.0.0.1:2181 \ n ” + “ dubbo.metadata-report.address = zookeeper://127.0 .0.1:2181 “)。 getBytes()); }
类似这样:
如果要提交PR,记得不要提交这段代码:)
ZK哪里加这个节点那?
刚开始学习dubbo,有些不太明白。请问怎么配置dubbo.configcenter,才能看到元数据呢? 我在这里看到说明
dubbo.configcenter 推荐使用,配置中心地址,比如dubbo.configcenter="zookeeper://127.0.0.1:2181" 需要在配置中心中,配置注册中心和元数据中心地址配置格式如下: zookeeper path: /dubbo/config/dubbo/dubbo.properties content: dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.metadata-report.address=zookeeper://127.0.0.1:2181
但不是很明白具体配置的文件在哪。麻烦告知下,谢谢 你好,这个问题解决了吗,我也碰到了,想请教下
@ kezhenxu94谢谢你的回答,我按照你说的做了。加了那段代码。在amdin后台配置管理也显示了配置。如下: 但是我在服务查询中点击服务详情还是不显示元数据。如下: 我在dubbo-admin的application.properties中配置了dubbo.configcenter =“ zookeeper://127.0.0.1:2181”也不行。 请问是还要在其他地方配置吗?谢谢
@kezhenxu94 谢谢你的回答,我按照你说的做了。加了那段代码。在amdin后台配置管理也显示了配置。如下: 但是我在服务查询中点击服务详情还是不显示元数据。如下: 我在dubbo-admin的application.properties中配置了dubbo.configcenter="zookeeper://127.0.0.1:2181" 也不行。 请问是还要在其他地方配置吗?谢谢
我操作的情况和你一样,按照@kezhenxu94的说明进行操作后同样不能出现原数据,后来在服务提供端加入配置dubbo.metadata-report.address=zookeeper://127.0.0.1:2181重启就可以了。另外说明:dubbo.config-center=zookeeper://127.0.0.1:2181不能在服务端配置,会报String不能转为ConfigCenterBean异常,使用的dubbo版本为2.7.3。
刚开始学习dubbo,有些不太明白。请问怎么配置dubbo.configcenter,才能看到元数据呢? 我在这里看到说明
dubbo.configcenter 推荐使用,配置中心地址,比如dubbo.configcenter="zookeeper://127.0.0.1:2181" 需要在配置中心中,配置注册中心和元数据中心地址配置格式如下: zookeeper path: /dubbo/config/dubbo/dubbo.properties content: dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.metadata-report.address=zookeeper://127.0.0.1:2181
但不是很明白具体配置的文件在哪。麻烦告知下,谢谢