有个特殊的需求,需要让provider传递值给consumer,类似consumer能传递attachment给provider一样。
阅读源码发现,provider好像只能传递返回值或者异常给consumer。
请问有什么办法可以办到这一点吗?
Dubbo version: 2.5.3.1
有个特殊的需求,需要让provider传递值给consumer,类似consumer能传递attachment给provider一样。
阅读源码发现,provider好像只能传递返回值或者异常给consumer。
请问有什么办法可以办到这一点吗?
Dubbo version: 2.5.3.1
具体返回值不是provider自己提供的吗? 可以在provider返回值封装你要的对象. eg: interface UserService { UserInfo queryBy(long id); }
这里的UserInfo包含你要传回给consumer的信息. 如果还不能满足你的诉求,请举个代码样例,谢谢
这块如果是以attachements的形式还不支持,这种需求我也不是很确定有没有必要,能说下你的应用场景吗?
印象中attachment只能是provider到consumer的
@qixiaobo 你说反了,目前dubbo 在consumer调用provider会使用attachment
感觉这是回调的功能吧。服务端往消息费推送消息
如果provider能给consumer隐式回传参数,在某些特殊情况特别有用。我举个例子,如果consumer希望能打印调用provider的来回网络耗时,这时候就需要获取provider的处理耗时,通过consumer的耗时减去provider的处理耗时,可以得到来回网络耗时,这时候需要provider将处理耗时传过来,通过隐式传值能避免直接侵入正常业务。
@manzhizhen The scene you give is quite reasonable, i think we should support this feature.
Network loss is usually shown by tracing platform. But back pressure like server tells its status to client may be useful
对 说反了……2.5.3只能是消费者到提供者
这个问题解决了吗?修复的版本号是哪一个?不想用最新的