其它问题

1. 关于容器环境下,将dubbo端口暴露为指定的端口,以便容器外可以访问到

(2019年3月7日 09:48:45)

考虑这样的场景,在容器集群内部,java应用默认监听在a.b.c.d:28080端口上,并自动将该ip端口注册到zookeeper上。对于外部而言是没法访问这个ip和端口,因此为了使外部可以访问,需要把内部的a.b.c.d:28080端口,映射为[宿主主机ip:指定端口]。

映射之后,是可以直接去调通这个端口的,但是应用注册到zookeeper的信息则还是a.b.c.d:28080端口,因此需要把这个信息改成[宿主主机ip:指定端口]。这篇文章则专门满足这个需求:https://github.com/apache/dubbo-samples/tree/master/dubbo-samples-docker

最终做法:设置环境变量即可

DUBBO_IP_TO_REGISTRY=宿主主机ip
DUBBO_PORT_TO_REGISTRY=指定端口

2. 关于dubbo传输异常对象

(2019年4月9日 09:53:37)

Dubbo默认可以传输异常Exception,也即接口上抛出有实现序列化接口的Exception对象,会传输到调用方,被调用方捕获并正常打印出来。要做到这样,需要在接口上声明throw XXXException才行。

3. 关于OpenFeign和Dubbo starter冲突的问题

https://github.com/apache/dubbo/issues/3990

当标记了@FeignClient的Service被dubbo provider的服务调用到时,会出现<dubbo:service interface="" /> interface not allow null!的异常,解决方法是对使用到的Feign的服务加上@Lazy注解,暂时这样解决。

文档更新时间: 2019-09-03 16:57   作者:nick