摘要: 深入理解HashMap的扩容机制 ——原创:转载请注明出处 http://www.cnblogs.com/yanzige/p/8392142.html 注:本文分两部分讲解,第一部分讲解Java7,第二部分讲解Java8 Java 7 中Hashmap扩容机制 一、什么时候扩容: 网上总结的会有很多 阅读全文
posted @ 2018-01-31 14:41 颜子歌 阅读(63130) 评论(20) 推荐(16) 编辑
摘要: 项目背景: 在给某项目做业务开发的时候,有一个任务派发的定时任务,该定时任务通过算法,把系统源源不断的任务每隔一分钟派发给不同的审核员进行审核。因为考虑到分布式任务调度器(如:xxljob/elasticjob)需要单独服务器搭建服务,所以为了减少服务器成本,就自己基于现有资源编写分布式锁,因为现有 阅读全文
posted @ 2022-11-17 16:54 颜子歌 阅读(819) 评论(5) 推荐(1) 编辑
摘要: 数据库DDL、DML、DCL、DQL、DPL、CCL的全称和使用 简介: SQL (Structure Query Language):结构化查询语言,一种特殊目的的编程语言,一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。结构化查询语言是高级的非过程化编程语言,允许用 阅读全文
posted @ 2022-01-20 16:07 颜子歌 阅读(1950) 评论(0) 推荐(0) 编辑
摘要: 常用数据库设计规范 一、 基本原则 物理数据模型是在逻辑模型的基础上,结合所使用的数据库的性能以及技术实现上的一些特殊要求,如索引、压缩、分表等机制,以最小容量的数据存储和最快的读写响应,综上要素进行设计。 1. 在基于逻辑模型的三范式基础上,可以基于实际情况进行部分逆范式化设计以更好的满足数据查询 阅读全文
posted @ 2022-01-20 09:46 颜子歌 阅读(1370) 评论(0) 推荐(0) 编辑
摘要: 索引失效快速记忆 索引在平时数据库使用中会被我们经常用到,索引在查询的时候使用不当,这会严重影响到我们服务器数据查询的性能,那么索引失效的原因有哪些啦?如何能够快速记忆? 有一个口诀:[模型函][空运][最快],下面将分别介绍每个字背后的意义。 模(模糊查询):like的模糊查询以%开头,索引失效。 阅读全文
posted @ 2022-01-19 14:03 颜子歌 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 大部分业务开发都需要我们开发人员自己进行表结构的设计,设计关系数据库时,会要求我们遵从不同的规范要求,设计出合理的关系型数据库,只有设计出更加合理的数据库表结构,才能在业务处理和后期维护变得更加方便。这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。 关系数据库有六种 阅读全文
posted @ 2022-01-13 16:03 颜子歌 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 从MySQL大量数据清洗到TiBD说起 一、业务场景: 公司主要做的业务是类似贝壳的二手房租售,数据库中存了上亿级别的房源数据,之前数据库使用的是 mysql,后面需要将 mysql 数据库切换成了 Tidb,在切换的过程中,需要将老库的数据经过数据清洗后再存入新库(因为有一些表结构的设计变了),其 阅读全文
posted @ 2021-08-23 11:37 颜子歌 阅读(1198) 评论(1) 推荐(3) 编辑
摘要: 作者 l Hollis来源 l Hollis(ID:hollischuang) 文章来源于微信公众号: Hollis 最近一段时间,我在面试的过程中,很喜欢问双亲委派的一些问题,因为我发现这个问题真的可以帮助我全方位的了解一个候选人。 记得前几天一次面试过程中,我和一位候选人聊到了JVM的类加载机制 阅读全文
posted @ 2021-01-11 17:03 颜子歌 阅读(225) 评论(0) 推荐(0) 编辑
摘要: Spring容器如何解决循环依赖的原理 最近看源码在研究类似如下配置的循环依赖是怎么解决的? 1 <bean id="a" class="com.project.demo.A" scope="singleton"> 2 <property name="b" ref="b"/> 3 </bean> 4 阅读全文
posted @ 2020-12-23 19:16 颜子歌 阅读(811) 评论(0) 推荐(0) 编辑
摘要: 关于 ReentrantLock 中锁 lock() 和解锁 unlock() 的底层原理浅析 如下代码,当我们在使用 ReentrantLock 进行加锁和解锁时,底层到底是如何帮助我们进行控制的啦? static Lock lock = new ReentrantLock(); public s 阅读全文
posted @ 2020-12-22 21:02 颜子歌 阅读(892) 评论(0) 推荐(3) 编辑
摘要: 背景:银行多个异步通知先后到达,需要依次更新同一条数据A(wherte acountId=aaa)(acountId是唯一索引)的不同状态,每一次更新需要在上一次更新的基础上进行。 注:数据A(wherte acountId=aaa)原本状态status=0、openstatus=0 ——》在收到通 阅读全文
posted @ 2020-11-13 16:04 颜子歌 阅读(3081) 评论(0) 推荐(0) 编辑