摘要:
注释生成器 为了生成db里面的注释,必须自定义注释生成器 EmptyCommentGenerator: MySQLCommentGenerator: 代码生成配置 mybatis generator.xml 注意其中的commentGenerator节点,引用的是自定义的类 上面的网上都有,但是网上 阅读全文
摘要:
安装 "下载" 查看版本: 命令使用 启动arthas E:\BaiduYunDownload\arthas packaging 3.1.0 bin $ java jar arthas boot.jar [INFO] arthas boot version: 3.1.0 [INFO] Found e 阅读全文
摘要:
安装: 命令使用: 监听特定网卡 tcpdump 抓取第一块网卡所有数据包 tcpdump i 抓取某一块网卡数据包 监听特定主机 特定来源 特定目标地址 监听特定端口 监听tcp协议,并加数据包写入abc.cap 总共15条数据,其中只包含tcp,http格式的数据 稍微复杂例子 1. tcp: 阅读全文
摘要:
telnet进入dubbo 查看pid pid查询对应端口 telnet进入dubbo dubbo内命令查看 ls 1. : 显示服务列表 2. : 显示服务详细信息列表 3. : 显示服务的方法列表 4. : 显示服务的方法详细信息列表 查看该dubbo所有服务 查看dubbo所有服务详细信息 查 阅读全文
摘要:
垃圾收集器长时间停顿,表现在 Web 页面上可能是页面响应码 500 之类的服务器错误问题,如果是个支付过程可能会导致支付失败,将造成公司的直接经济损失,程序员要尽量避免或者说减少此类情况发生。 提升失败(promotion failed) 在 Minor GC 过程中,Survivor Unuse 阅读全文
摘要:
BTrace简介 GitHub地址: "BTrace" 下载地址: "v1.3.11.3" 官方使用教程: "Btrace使用教程" 使用场景 BTrace 是一个事后工具,所谓事后工具就是在服务已经上线了,但是发现存在以下问题的时候,可以用 BTrace。 1. 比如哪些方法执行太慢,例如监控执行 阅读全文
摘要:
本文主要是对《深入理解java虚拟机 第二版》第三章部分做的总结,文章中大部分内容都来自这章内容,也是博客 JVM 学习的第二部分。 简述 说到垃圾收集(Garbage Collection,GC),很多人可能会认为这是 Java 自有的特性,曾经我也一度这样想,后来才知道 GC 的历史要远远长于 阅读全文
摘要:
代码: public class HeapTest { private static final int _1M = 1024 * 1024; public static void main(String[] args) throws InterruptedException { System.gc 阅读全文
摘要:
CMS垃圾回收机制 简介 Concurrent Mark Sweep,是一款基于并发、使用标记清除算法的垃圾回收算法,只针对老年代进行垃圾回收。CMS收集器工作时,GC工作线程和用户线程可以并发执行,以达到降低STW时间的目的。 开起VM选项-XX:+UseConcMarkSweepGC,表示对老年 阅读全文
摘要:
找不到符号异常 在控制台项目中配置Lombok 编译会报错 解决 方法: 父类字段ToString不了 测试: Output: 可以明显发现,School类里面的字段都没有toString,并且equals还是相等的。 解决: 输出; 其实在上面的情况时,鼠标放在@Data上,会自动提示异常 @Eq 阅读全文
摘要:
更新IDEA,是配置无缝对接 idea里面的配置文件主要就 ,`idea.properties` 不要更新idea自带的这两个文件,因为在更新IntelliJ IDEA时会替换它。 此外,在macOS的情况下,编辑 文件会违反应用程序签名。 解决方法: 1.可以将配置放在 "IDEA配置目录" ,然 阅读全文
摘要:
FIFO算法 FIFO 算法是一种比较容易实现的算法。它的思想是先进先出(FIFO,队列),这是最简单、最公平的一种思想,即 如果一个数据是最先进入的,那么可以认为在将来它被访问的可能性很小。空间满的时候,最先进入的数据会被最早置换(淘汰)掉 。 FIFO 算法的描述:设计一种缓存结构,该结构在构造 阅读全文
摘要:
用户定义的变量(前缀为@): 您可以访问任何用户定义的变量,而无需声明或初始化它。如果引用尚未初始化的变量,则其值为 和字符串类型。 set赋值: select赋值: 或者 select使用:=也可以实现赋值 用户定义的变量是特定于会话的。也就是说,其他客户端无法看到或使用由一个客户端定义的用户变量 阅读全文
摘要:
缓存穿透,并发,雪崩,热点 缓存穿透 概念 查询一个根本不存在的数据,缓存层和存储层都不会命中,但是出于容错的考虑,如果从存储层查不到数据则不写入缓存层。 缓存穿透将导致不存在的数据每次请求都要到存储层去查询,失去了缓存保护后端存储的意义。 解决方案: 业务校验拦截 接口增加业务层级的Filter, 阅读全文
摘要:
setnx命令 将 key 的值设为 value,当且仅当 key 不存在。 若给定的 key 已经存在,则 SETNX 不做任何动作。 SETNX 是SET if Not eXists的简写。 getset命令 将键 的值设为 , 并返回键 在被设置之前的旧值。 返回给定键 的旧值。 如果键 没有 阅读全文