- 博客(15)
- 收藏
- 关注
原创 MySQL 日志:undo log、redo log、binlog 有什么用?
undo log(回滚日志):是 Innodb 存储引擎层生成的日志,实现了事务中的原子性,主要用于事务回滚和 MVCC。 redo log(重做日志):是 Innodb 存储引擎层生成的日志,实现了事务中的持久性,主要用于掉电等故障恢复; binlog (归档日志):是 Server 层生成的日志,主要用于数据备份和主从复制;
2024-05-13 00:02:19 352 1
原创 Netty零拷贝技术实现方式:
使用直接内存:Netty 使用 Java NI0 中的 ByteBuffer,而 ByteBuffer 可以使用直接内存,这样可以避免数据在堆内存和直接内存之间的复制。 FileChannel.transferTo0)和transferFrom0: Netty可以使用 FileChannel的transferTo() 和transferFrom0 方法直接将文件内容传输到网络套接字,而不需要经过用户空间。. CompositeByteBuf:Netty的CompositeByteBuf允许将多个 B
2024-05-12 23:53:47 229
原创 Mysql字符超出限制问题
表示在严格模式下禁用了ENGINE=DEFAULT选项。这意味着如果表类型(例如InnoDB或MyISAM)不可用时,MySQL不会隐式更改表的存储引擎。:这部分是JDBC的一个参数,用于指示当通过JDBC截断字符串时是否严格遵循JDBC规范。参数用于设置MySQL服务器的SQL模式,这里设置为。,则JDBC可能会允许截断字符串,而不会抛出。:这部分定义了会话变量,其中。
2024-04-15 15:00:55 332 1
原创 使用Java 全新String API
repeat(int count):返回一个新的字符串,该字符串是由原字符串重复指定次数形成的。 isBlank():检查字符串是否为空白字符序列,即长度为 0 或仅包含空格字符的字符串。 lines():返回一个流,该流由字符串按行分隔而成。 strip():返回一个新的字符串,该字符串是原字符串去除前导空格和尾随空格后形成的。 stripLeading():返回一个新的字符串,该字符串是原字符串去除前导空格后形成的。 stripTrailing():返回一个新的字符串,该字符串是原字符串去除尾
2023-06-14 14:41:48 127
原创 Linux查看服务器性能
它报告有关进程、内存、分页、块 IO、陷阱、磁盘。可以显示系统中空闲和使用的物理和交换内存的总量,以及内核使用的缓冲区和缓存。1、使用 Linux 的 lscpu 命令检查服务器的 CPU 和处理单元。4、使用 Linux 的 fdisk 命令检查添加的硬盘大小。3、使用 Linux 的 vmstat 命令检查内存信息。2、使用 Linux 的 free 命令查看内存信息。允许我们查看、创建、调整大小、删除、移动和复制分区。选服务器时主要看 CPU、内存、硬盘、带宽。firewall 防火墙。
2023-03-24 10:41:03 1061
原创 SpringBoot启动原理
1.SpringBoot.run会创建一个ioc容器,AnnotationConfigServletWebServerApplicationContext。2.ico容器启动onRefresh会启动Tomcat。3.Tomcat启动会加载所有的Servlet。4.DispatcherServlet会加载九大组件的整个初始化流程。
2022-03-02 21:28:39 234 1
原创 git本地回滚到上一个版本
linux:git reset --hard HEAD^windows:git reset --hard HEAD"^"
2022-02-15 14:47:24 513
原创 Spring源码中FactoryBean的流程
工厂Bean在Spring容器中一开始保存的是工厂本身。 第一次获取xx组件(HelloFactory能产生的对象)。 Spring.getBean会在底层所有组件挨个遍历找那个组件的类型是xx。 找到xxFactory发现他是工厂,类型就被决定成xx。 调用工厂方法(getObject)创建xx对象。 在容器中保存的名字。 普通的单实例Bean保存在singletonObject这里面。 工厂产生的Bean,缓存在factoryBeanCache;下一次直接从这里拿,所有工厂bean默认还是
2022-01-17 21:40:32 157
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人