摘要:
零拷贝 零拷贝是指计算机执行IO操作时,CPU不需要将数据从一个存储区域复制到另一个存储区域,从而可以减少上下文切换以及CPU的拷贝时间。它是一种I/O操作优化技术。 传统 IO 的执行流程 传统的IO流程,包括read和write的过程。 read:把数据从磁盘读取到内核缓冲区,再拷贝到用户缓冲区 阅读全文
摘要:
@Transactional介绍 @Transactional是spring中声明式事务管理的注解配置方式,相信这个注解的作用大家都很清楚。@Transactional注解可以帮助我们把事务开启、提交或者回滚的操作,通过aop的方式进行管理。 通过@Transactional注解就能让spring为 阅读全文
摘要:
1、分支逻辑提前return if (CollectionUtils.isEmpty(newDataList)) { // 提前判断,返回业务逻辑 return; } TestCodeData newData = newDataList.stream().filter(p -> { if (p.ge 阅读全文
摘要:
import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.beans.BeansException; import org.sprin 阅读全文
摘要:
共享锁:也称读锁。 排他锁:也称写锁。 锁粒度角度划分: 表级锁: S锁:共享锁 X锁:排他锁 意向锁:行级锁的锁定同时,会同时在表级进行,读或者写的意向锁。当有表级锁时直接就能判断不能锁定需要等待。 自增锁:自增ID上的锁,分为三种,8.0之前有两个,表级别锁和连续锁(拿到锁可申请连续自增数据), 阅读全文
摘要:
DDD是领域驱动设计(Domain-Driven Design )的简称,DDD是一种分析设计建模方法,它倡导统一语言,提出了实体和值对象 以及聚合根等概念,借助DDD我们能够在结构理清需求中领域模型。 服务器后端的发展历程: 1、UI+DB,两层架构。 2、UI+Service+DB,多层SOA架 阅读全文
摘要:
sql执行过程 注:8.0版本mysql已经去掉了缓存功能。 1、未命中缓存 服务器连接->查询缓存->解析器(sql语法校验、生成语法树等)->查询优化器->执行计划->查询执行引擎->访问磁盘文件 2、命中缓存 服务器连接->查询缓存-查询执行引擎->访问磁盘文件 索引 索引是帮助Mysql高效 阅读全文
摘要:
java提供的线程池类架构图: 全参数构造方法 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> wo 阅读全文
摘要:
1、机器语言:难读,难写。 2、汇编语言:不能夸CPU,多环境需要多个编写版本。 3、高级语言:好处解决跨平台。 4、两次软件危机 ①、软件规模和复杂度增加,导致软件质量下降,把控难度高。 解决这一问题,提出了软件工程,结构化程序设计,思想本质是面向过程设计思想。但通过“自顶向下、逐步细化、模块化” 阅读全文
摘要:
新建bat文件,内容如下: @echo off ECHO 重置Studio 3T的使用日期...... REG DELETE "HKEY_CURRENT_USER\Software\JavaSoft\Prefs\3t\mongochef\enterprise" /f RMDIR /s /q %USE 阅读全文