dubbo分布式调用传参数
背景:现有代码做改造,原有结构是直接通过servlet的service()方法做完全部业务逻辑;现在改造结构,将service()方法拆分为几个服务,通过dubbo框架,将服务组装出业务逻辑。
问题:以前结构有用到threadlocal线程局部变量(比如用来存session),现在改造程序结构,拆分出的服务在别的jvm线程中运行,肯定取不到threadlocal变量。
想知道dubbo框架有没有可以用来传一些例如session变量信息的方法。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
通过dubbo的RpcContext的attachment(map存储keyvalue),可以隐式传参。
但是有一个情况会导致attachment失效。
A作为http请求入口,产生了用户session对象,先dubbo调用服务B,此时B能得到,B返回到A后,A再从rpccontext获取attachment就为空了,而且A再次调用C(类似于A做调度),C得到的也是空。不知道有没有遇到过?