- 博客(13)
- 资源 (2)
- 收藏
- 关注
原创 我的创作纪念日
提示:你过去写得最好的一段代码是什么?提示:当前创作和你的工作、学习是什么样的关系。提示:可以和大家分享最初成为创作者的初心。提示:在创作的过程中都有哪些收获。提示:职业规划、创作规划等。
2023-05-23 09:46:15 135
原创 Mybatis plus如何存储list
业务开发过程中,字段可能为数组,如何直接存储1.在实体类上加注解@TableName(value="xxxTable",autoResultMap = true)不加该注解,数据写入没问题,查询时数组字段会为null2.在属性上加注解@TableField(value="xxlField",typeHandler = FastjsonTypeHandler.class)...
2022-05-23 10:09:31 3165 2
原创 xxljob使用总结
目录一、概述及资料二、设计及架构1.系统组成1.1调度模块(调度中心)1.2 执行模块(执行器)2.调度模块2.1 自研调度模块2.2 调度中心HA(集群)2.3 任务失败告警2.4 阻塞处理策略3.执行器模块三、问题与解答3.1 什么是分片广播3.2 执行器注册机制3.3 新版本如何避免任务重复执行?3.4 避免任务重复执行(官方文档给出的解决,其实老版本仍然会有重复调度的问题,使用quartz的版本)3.5.执行器端口3.6 老
2021-10-26 09:00:00 1862
原创 RocketMQ知识整理
一、基本原理及特性1.文档、资料地址RocketMQ官网地址:Apache RocketMQ RocketMQ阿里云地址:什么是消息队列RocketMQ版? - 消息队列RocketMQ版 - 阿里云 RocketMQ gitHub地址:https://github.com/apache/rocketmq2.架构设计1)结合部署架构图,描述集群工作流程:启动NameServer,NameServer起来后监听端口,等待Broker、Producer、Consumer连上来,相.
2021-10-25 18:00:00 621
原创 list去重的优雅方法
List去重,网上有很多文章都有说,其实我们写代码的过程中用一种就够了,下面这种我认为是最优雅的写法。1.list中存放的是基本数据类型的数据 public static void main(String[] args) { List<String> strs = Arrays.asList("a", "b", "a"); List<String> collect = strs.stream().distinct().collect(Col
2021-10-21 17:55:44 272
原创 OOM,你怕了吗?
大家好,今天要给大家介绍下OOM相关的知识点。一般这种问题出现在生产环境,本地很少出现(除非你写了死循环),所以第一件要说的就是别慌,慌是没有用的,不多逼逼,开始正文一、如何排查1.指定启动参数,发生异常时打印dump文件-XX:+HeapDumpOnOutOfMemoryError:表示当JVM发生OOM时,自动生成DUMP文件。-XX:HeapDumpPath=${目录}:表示生成DUMP文件的路径,也可以指定文件名称,例如:-XX:HeapDumpPath=${目录}/java_h
2021-10-11 17:03:50 203
原创 多线程知识整理加面试题
前言 今日起(10月11日)开辟新的专栏,统一整理多线程相关的所有知识点,过程中会参考各种书籍、文章,并结合自己的实践,整理多线程相关的所有知识点。目的是为了整合线程相关知识体系,查缺补漏1.进程与线程的关系进程:进程是程序向操作系统申请资源(如内存空间和文件句柄)的基本单位。线程:是进程中可独立执行的最小单位关系:一个进程可以包含多个线程。同一个进程中的所有线程共享该进程中的资源,如内存空间、文件句柄等。进程与线程之间的关系,好比一个营业中的饭店与其正在工作的员工之间的关系。一个营业.
2021-10-11 16:07:28 443
原创 算法总结-每日一题-(10月22日停更,搞别的专题去了)
1.两数之和思路:1.考虑hash表,key为数组元素对应的值,value为下标,2.考虑只循环一次,将target减去某一个值。再看原来数组里是否包含剩下的 public static int[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length; i++
2021-09-17 19:25:55 302
原创 java类加载机制及衍生问题
1.JVM加载类的过程加载 验证 准备 解析 初始化 使用 销毁2.类加载器分类:启动类加载器:它负责加载Java的核心类(如String、System等)。它比较特殊,因为它是由原生C++代码实现的,并不是java.lang.ClassLoader的子类扩展类加载器:它负责加载JRE的扩展目录(%JAVA_HOME%/jre/lib/ext)中JAR包的类,我们可以通过把自己开发的类打包成JAR文件放入扩展目录来为Java扩展核心类以外的新功能应用类加载器:它负责在JVM启动时加载来自Java命
2020-09-30 15:18:13 197
原创 使用xxl-job遇到的一些问题及总结
1.避免任务重复执行(官方文档给出的解决,其实老版本仍然会有重复调度的问题,使用quartz的版本)调度密集或者耗时任务可能会导致任务阻塞,集群情况下调度组件小概率情况下会重复触发;针对上述情况,可以通过结合 “单机路由策略(如:第一台、一致性哈希)” + “阻塞策略(如:单机串行、丢弃后续调度)” 来规避,最终避免任务重复执行。2.分片任务:一个任务在多台服务器上同时都执行,降低任务处理时间,调度器会调用配置的所有机器3.执行器用的端口和该执行器本身的端口没有关系,在启动时可以指定执行器端口,xx
2020-09-30 15:08:48 20074 6
原创 钉钉机器人MarkDown类型的消息不支持@人
最近在告警的过程中,需要用到钉钉机器人,创建自定义机器人后,发送相关消息。我们需要@群内的相关人员,使用过程中发现只有text类型的消息支持@相关人,其余类型不支持。百思不得其解,下面是钉钉的开发文档钉钉机器人开发文档如需要@人,只需要在at这个json对象中加入对应手机号就ok,而其他类型的消息,比如MarkDown类型则不能@相关人起初我以为是我哪里配置的问题,找了很久始终没有找到原因。最后提了工单,他们告诉我在text中也要吧手机号当作文本拼接在后面文档中没有任何说明,而且
2020-05-23 20:13:36 10950 21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人