![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术贴
文章平均质量分 56
百里东君~
后端开发爱好者-原创分享
展开
-
PageHelper分页合理化reasonable源码分析
PageHelper分页合理化reasonable,PageHelper死循环问题,PageHelper源码解析原创 2022-08-29 22:24:04 · 3907 阅读 · 1 评论 -
@EnableConfigurationProperties和@ConfigurationProperties用法及注意事项
@EnableConfigurationProperties中引用的类一定要加@ConfigurationProperties这个注解,并且不需要再添加@Component注解,不然会导致被@ConfigurationProperties注解的类,在容器中实例化了2个bean对象:1、被@Component实例化注入到容器中,2、被@EnableConfigurationProperties实例化注入到容器中,此时如果我们使用@Aware获取Ltbus类的bean对象,会导致报错...原创 2022-08-16 22:59:46 · 1624 阅读 · 0 评论 -
MDC实现线程池tranceId全链路传递
判断当前线程对应MDC的上下文是否存在,存在则是子线程,设置MDC中的traceId值,不存在则生成新的tranceid,再执行run方法,执行结束之后清除线程tranceId。1、首先定义一个自定义线程池类继承ThreadPoolTaskExecutor。打印结果tranceid均一致,快动手试试吧。2、编写tranceid包装工具类。3、初始化自定义线程池。4、接下来进入实战环节。...原创 2022-08-14 17:19:53 · 2095 阅读 · 0 评论 -
两种白名单限流方案(redis lua限流,guava方案)
redis+lua限流技术方案guava限流技术方案原创 2022-07-31 17:03:18 · 637 阅读 · 0 评论 -
java异步线程池配置
一.异步:1)初始化 线程 的四种方式:a:继承 Thread 类b:实现 Runnable 接口c:实现 Callable 接口 + FutureTask 类(可以拿到 返回结果,可以处理异常)d:线程池:-1.实际开发中,以上三种,线程启动的方式都不使用,将所有的多线程一步任务,都交给线程池执行。-2.整个系统中,线程池只有一两个。每个异步任务,直接提交给 线程池,让他自己去执行就行。-3.代码示例:public class ThreadTest01 { public原创 2021-09-29 16:12:21 · 1127 阅读 · 0 评论 -
java接口的幂等性及解决方案
一、什么情况下需要幂等用户多次点击按钮用户页面回退再次提交微服务相互调用,由于网络问题,导致请求失败,feign触发重试机制二、幂等性解决方案2.1 token机制(令牌)即验证码机制,例如页面点击提交按钮之前,会先去服务端获取token,服务端同时也在Redis中保存这个token数据,并将token显示到前端(验证码),让用户正确填写验证码并发起请求,此时后端便会校验token是否一致,一致的话即是通过并在Redis中删除该token,当用户还是携带上次的验证码多次提交,此时服务器判断验证码原创 2021-11-06 23:31:54 · 3237 阅读 · 1 评论 -
es搜索同义词近义词技术方案
方案一:使用同义词文件,在es索引中定义"synonyms_path",并设置updateable为true动态更新同义词,但这个需要运维一起配合,当有新增的同义词时候,也需要运维帮我们添加进这个文件中,维护比较不方便PUT /myIndex{ "settings": { "analysis": { "filter": { "my_synonym_filter": { "type": "synonym", "updatea原创 2021-11-03 19:15:13 · 5403 阅读 · 1 评论 -
es如何修改es索引字段类型 reindex
今天因为上线之前,忘记提单先把es的索引新增的几个字段先建好,导致需求上线后,一些触发es推送数据的接口,使得es自动根据数据类型创建索引机制生效,原本我打算增加的mapping字段是数组keyword类型的,但是es自动匹配创建类型为long,导致索引作废,可是这个es索引24小时都有人在使用,如果粗暴删除重建索引,再全量同步数据,会导致一段时间国内外用户查询数据受影响,这个操作估计也会上传比较严重的故障等级,那有什么解决方法吗?–当然如果你们系统没有使用es别名,那么暂时先按以下方式处理,后面提出了后原创 2021-09-03 00:08:51 · 5404 阅读 · 2 评论 -
详细:idea2021自定义注解模板live Templates
在编写代码的时候,我们都会给创建的类或者,所写的方法,又或者是变量添加一个注解,以下图为例:图中一共3种注释模板,其中第一种和第三种显然不是自己每次去添加的,而是使用idea快捷键自动生成的注解模板,那么我们盖怎么实现呢?1.在idea设置中搜索 live Templates2、可以点击最右边的+号选项2创建一个自定义的快捷键模板,这里使用user,接着还是再点+,选择选项1,开始创建一个自定义的快捷键模板3、以方法注解为例子我们想要每次敲一个再加一个回车键,就自动生成一个方法注解,例如我原创 2021-08-05 00:03:14 · 3507 阅读 · 0 评论 -
(最新)idea git合并多条提交成一条commit
很多情况,我们在开发过程中并不是一次完成开发就commit然后push,我们可能因为一些事情需要切换分支,所以需要在本分支先commit一下demo,这样会导致我们明明一个功能的开发却分为了很多次commit,那么,如何利用idea将多次提交的内容合并成一次提交?如图,我在开发中,同个功能的开发,提交了2次,现在我想把这2次提交合并成一次,首先,我们选择第一次(最早)提交的log,右击选择(如下图)右击最新一次(最后)的提交,选择Fixup,合并到上一次提交中这时,新的提交就合并到旧的提交了,此原创 2021-07-04 12:09:29 · 6251 阅读 · 4 评论 -
简单了解什么是CDN
简单了解什么是CDN一、什么是CDN1、例如某公司只有中国一个源站,在欧美的国家,若想访问该公司网址,则要通过十几跳才能访问到源站2、加了CDN网络,有很多优点二、CDN主要技术1、静态加速2、动态加速3、防护技术,网站被攻击,不会影响到源站,由于域名是解析到我们提供的解析记录值上,那么被攻击,攻击的量也只会打到我们CDN节点上,所以网站被攻击源站服务器不会受到影响。...原创 2021-01-23 16:27:37 · 217 阅读 · 0 评论