- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 Dubbo的filter中使用ThreadLocal引发的坑
在filter中使用ThreadLocal要特别注意一些问题,首先ThreadLocal是跟着线程走的,而不管是dubbo或者其他的rpc框架或者Springmvc都有个特点:使用的是线程池模型,当线程执行任务结束之后会回到线程池,这时如果在回到线程池之前ThreadLocal没有被清理,当下一次请求拿到这个线程的时候还能读取到之前没有被清理的ThreadLocal的数据,这样显然不是我们想要的结果了。处理方式以dubbo的filter为例://在服务端的filter中invoker.invoke(in
2021-01-14 16:59:08 1215 3
原创 dubbo不提供服务只消费服务
之前项目中有使用到dubbo.registry.register=false这个配置项来控制dubbo不提供服务,只消费服务。但是这个配置带来的弊端是它作为消费方也不会被注册到zookeeper上,这样不太方便管理,因此有替代配置项:dubbo.provider.protocol=injvm,此配置看配置项意思就是讲服务提供方走injvm协议,顾名思义,服务提供只供jvm内部使用,不暴露在外面。同时消费其他服务也会注册到zookeeper上。...
2020-08-10 11:45:20 1044
原创 git忽略本地修改不提交到远程仓库
忽略某文件提交到远程仓库git update-index --assume-unchanged [file-path]取消忽略某文件提交到远程仓库git update-index --no-assume-unchanged [file-path]
2020-02-27 16:59:27 2340
原创 dubbo泛化调用使用GenericService自定义Exception变成GenericException的问题
使用GenericService调用dubbo接口的时候,发现抛出来的异常无法获取到自定义
2019-03-05 18:01:49 3555 3
原创 dubbo使用GenericService泛化调用
我们项目中常见场景,java应用内部接口都是使用dubbo,某个非java应用需要调用我们的接口的时候,无法使用dubbo,这是我们需要给它提供其他形式的接口,如restful api等等,这时我们需要为这个接口开发而增加额外的工作量。这时候就可以使用dubbo提供的GenericService来调用dubbo接口了,而使用GenericService调用接口的好处是不需要依赖服务提供方给的int...
2019-03-05 13:10:13 10312
原创 dubbo配置filter隐式传参
在dubbo使用过程中,有一些通用参数如果显式的在接口参数中传递,使用起来会有一些不方便。比如:经常使用的session中存放的用户信息,如果都放入参数中传递,这样会耦合到业务逻辑中了,这时隐式传参就是一种比较好的处理方式了。话不多说,下面是利用dubbo提供的RpcContext隐式传参的方式:RpcContext.setAttachments(Map<String, String&...
2019-03-05 12:43:24 6902 4
原创 git第一次本地代码提交到远程仓库
git第一次本地代码提交到远程仓库1、git仓库初始化git init2、本地仓库连接到远程仓库git remote add origin [remote url]3、查看当前状态git status4、将代码添加到暂存区git add .5、将代码添加到仓库git commit -m ‘first commit’6、将本地代码提交到远程仓库git push origin ...
2019-03-05 09:51:34 2750
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人