自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 @ConditionalOnExpression 控制是否初始bean

我们有时候会遇到一些bean希望通过注册中心控制是否被初始化,@ConditionalOnExpression可以帮我们办到。这里写过小例子。1、这个配置是我们上传文件指定临时目录的配置,这里通过这个查看是否注入成功。在我们想要注入控制注解添加 @ConditionalOnExpression("${is.inject:true}"),通过配置文件来控制是否注入。@Configuration...

2020-03-26 23:06:18 600

原创 avl树的java实现(平衡二叉树)

平衡二叉树定义(AVL):(1)它的左子树和右子树的深度之差(平衡因子)的绝对值不超过1。(2)它的左子树和右子树都是一颗平衡二叉树。平衡因子:将二叉树上节点的左子树深度减去右子树深度的值称为平衡因子BF。则平衡二叉树上所有节点的平衡因子只可能是1,-1,0。只要二叉树上有一个节点的平衡因子的绝对值大于1,那么该二叉树就是不平衡的。最小不平衡子树:距离插入节点最近的,且平衡因子的绝对值...

2020-03-22 23:01:46 226

原创 kafka消息堆积及分区不均匀的解决方案

我在环境中发现代码里面的kafka有所延迟,查看kafka消息发现堆积严重,经过检查发现是kafka消息分区不均匀造成的,消费速度过慢。这里由自己在虚拟机上演示相关问题,给大家提供相应问题的参考思路。1、先在kafka消息中创建对应分区数目的topic(testTopic2,testTopic3)testTopic1由代码创建./kafka-topics.sh --create --zooke...

2020-03-21 15:44:23 10224

原创 获取客户端真实IP地址

在现在软件开发中,获取客户端的ip地址是非常常见的操作。request为我们提供request.getRemoteAddr()方法提供ip地址,但是由于我们在一般软件开发中基本都会使用代理,获取ip地址的过程就是从常见代理软件中获取他们添加的ip请求头。public class IpUtil { /** * 获取用户真实IP地址,不使用request.getRemoteAddr...

2020-03-16 22:21:34 1226

原创 如何排查CPU占用过高的通用步骤

cpu占用过高是linux服务器常见的一种故障,对于这种问题其 实是有一些通用的步骤的,这里我将对于这种问题的排查方式做一下记录。1、使用top命令找出linux服务器上运行cpu和内存最大的几个服务。[root@localhost ~]# toptop - 03:01:38 up 11 days, 5:28, 3 users, load average: 1.56, 1.95, 2....

2020-03-15 16:20:43 2107

原创 全局异常处理

我们当项目变得比较大的时候,开始不可避免添加全局异常处理。主要为了针对项目能够进行统一的管理,这里我将异常处理基本结构写出供大家参考。1、异常处理主要针对是异常处理的捕获类和对异常处理的具体处理方式,这里我将异常中简单分为自定义异常和其他异常。@RestControllerAdvicepublic class GlobalExceptionHandler extends BaseGlobal...

2020-03-14 23:10:55 461

原创 接口幂等性的解决方案(用springboot配置拦截器redis校验token 是否重复)

幂等性的含义:任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义,最终的含义就是对数据库的影响只能是一次性的,不能重复处理。在我们编程中中一些常见的操作:1、select查询天然幂等2、delete删除也是幂等,删除同一个多次效果一样3、update直接更新某个值的,幂等4、update更新累加操作的,非幂等5、insert非幂等操作,每次新增一条造成多次请求的原因:1...

2020-03-14 00:21:53 2295 2

原创 时间复杂度 和空间复杂度的计算

一、 算法的时间复杂度定义一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数。记作T(n)=O(f(n)),称O(f(n))为算法的渐进时间复杂度(O是数量级的符号 ),简称时间复杂度。1、根据定义,可以归纳出基本的计算步骤(1.)计...

2020-03-10 22:17:29 1028

原创 WebMvcConfigurer 和 HandlerInterceptor 拦截器配置校验服务

在工作中除了通过过滤器配置校验,拦截器配置校验规则也是很常见方式,这里通过WebMvcConfigurer 和 HandlerInterceptor 拦截器配置校验。1、配置拦截器(这个里面添加了跨域支持,当集成swagger防止后台报错),如果没有必要删除其配置,这里做一下展示。@Configurationpublic class AdminCommonConfig implements...

2020-03-07 18:28:37 3830

原创 kill -9 PID 强制关闭造成 dubbo消费方无法消费

我们在dubbo时,我们项目由dubbo的版本由2.7.0升级到2.7.5。出现了dubbo无效消费的情况,经过检查发现zookeeper 里面出现大量相同的注册信息。dubbo是通过JDK的ShutdownHook来完成优雅停机的,所以如果我们使用”kill -9 PID”等强制关闭指令,是不会执行优雅停机的,只有通过”kill PID”时,才会执行。造成大量相同注册信息积压在zookeeper...

2020-03-01 23:43:47 674

所辖行政区对应的表和数据

我们很多时候都需要所辖行政区的查询的接口,我们大部分都有已经存在的接口供我们调用。

2020-12-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除