上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 21 下一页

2020年11月29日

52 条 SQL 语句性能优化策略

摘要: 查询的结果用于“插、删、改”的不能加nolock;查询的表属于频繁发生页分裂的,慎用nolock ;使用临时表一样可以保存“数据前影”,起到类似Oracle的undo表空间的功能,能采用临时表提高并发性能的,不要用nolock。 查询的结果用于“插、删、改”的不能加nolock; 查询的表属于频繁发 阅读全文

posted @ 2020-11-29 09:48 努力做一个伪程序员 阅读(94) 评论(0) 推荐(0) 编辑

2020年10月25日

必须了解的 MySQL 三大日志

摘要: 日志是 mysql 数据库的重要组成部分,记录着数据库运行期间各种状态信息。mysql日志主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。作为开发,我们重点需要关注的是二进制日志( binlog )和事务日志(包括redo log 和 undo log ),本文接下来会详细介绍这三种日志。binlogbinlog 用于记录数据库执行的写入性操作(不包括查询)信息,以二进制的形式... 阅读全文

posted @ 2020-10-25 17:08 努力做一个伪程序员 阅读(496) 评论(0) 推荐(1) 编辑

2020年9月6日

MyBatis执行sql的整个流程

摘要: 1. mybatis的几大“组件”我这里说的“组件”,可以理解为Mybatis执行过程中的很重要的几个模块。1.1 SqlSessionFactoryBuilder从名称长可以看出来使用的建造者设计模式(Builder),用于构建SqlSessionFactory对象1.解析mybatis的xml配置文件,然后创建Configuration对象(对应标签);2.根据创建的Configuratio... 阅读全文

posted @ 2020-09-06 08:33 努力做一个伪程序员 阅读(1566) 评论(0) 推荐(0) 编辑

2020年8月1日

Java中的锁[原理、锁优化、CAS、AQS]

摘要: 参考地址: https://mp.weixin.qq.com/s/D44S7HtEZBSuDI1biAXbVw1、为什么要用锁?锁-是为了解决并发操作引起的脏读、数据不一致的问题。2、锁实现的基本原理2.1、volatile★Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些情况下比锁要... 阅读全文

posted @ 2020-08-01 12:10 努力做一个伪程序员 阅读(170) 评论(0) 推荐(0) 编辑

Java中 volatile 关键字

摘要: 参考地址: https://mp.weixin.qq.com/s/vsfnPzfpMQY57-Tkl8pecQ一、简介volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级,因为它不会引起线程上下文的切换和调度。但是... 阅读全文

posted @ 2020-08-01 11:39 努力做一个伪程序员 阅读(182) 评论(0) 推荐(0) 编辑

2020年7月19日

Redis学习

摘要: 一、概述二、数据类型STRINGLISTSETHASHZSET三、数据结构字典跳跃表四、使用场景计数器缓存查找表消息队列会话缓存分布式锁实现其它五、Redis 与 Memcached数据类型数据持久化分布式内存管理机制六、键的过期时间七、数据淘汰策略八、持久化RDB 持久化AOF 持久化九、事务十、事件文件事件时间事件事件的调度与执行十一、复制连接过程主从链十二、Sentinel十三、分片十四、一... 阅读全文

posted @ 2020-07-19 18:05 努力做一个伪程序员 阅读(174) 评论(0) 推荐(0) 编辑

MySQL索引

摘要: # 什么是索引?当我们使用汉语字典查找某个字时,我们会先通过拼音目录查到那个字所在的页码,然后直接翻到字典的那一页,找到我们要查的字,通过拼音目录查找比我们拿起字典从头一页一页翻找要快的多,数据库索引也一样,索引就像书的目录,通过索引能极大提高数据查询的效率。# 索引的实现方式在数据库中,常见的索引实现方式有哈希表、有序数组、搜索树哈希表哈希表是通过键值对(key-value)存储数据的索引实现方... 阅读全文

posted @ 2020-07-19 17:23 努力做一个伪程序员 阅读(151) 评论(0) 推荐(0) 编辑

细数 Java 线程池的原理

摘要: 参考地址: https://mp.weixin.qq.com/s/zKClZIv1TWNPHpxK2nvNJwJava 中的 ThreadPoolExecutor 类java.uitl.concurrent.ThreadPoolExecutor 类是线程池中最核心的一个类,因此如果要透彻地了解Java 中的线程池,必须先了解这个类。下面我们来看一下 ThreadPoolExecutor 类的具体实... 阅读全文

posted @ 2020-07-19 17:06 努力做一个伪程序员 阅读(189) 评论(0) 推荐(0) 编辑

2020年7月18日

红黑树学习

摘要: 前言在MySQL中,无论是Innodb还是MyIsam,都使用了B+树作索引结构(这里不考虑hash等其他索引)。本文将从最普通的二叉查找树开始,逐步说明各种树解决的问题以及面临的新问题,从而说明MySQL为什么选择B+树作为索引结构。目录一、二叉查找树(BST):不平衡二、平衡二叉树(AVL):旋转耗时三、红黑树:树太高四、B树:为磁盘而生五、B+树六、感受B+树的威力七、总结一、二叉查找树(B... 阅读全文

posted @ 2020-07-18 21:50 努力做一个伪程序员 阅读(271) 评论(0) 推荐(0) 编辑

HashMap学习

摘要: HashMap 概述HashMap 是 Map 接口的实现,HashMap 允许空的 key-value 键值对,HashMap 被认为是 Hashtable 的增强版,HashMap 是一个非线程安全的容器,如果想构造线程安全的 Map 考虑使用 ConcurrentHashMap。HashMap 是无序的,因为 HashMap 无法保证内部存储的键值对的有序性。HashMap 的底层数据结构是... 阅读全文

posted @ 2020-07-18 21:41 努力做一个伪程序员 阅读(239) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 21 下一页

导航