摘要: Mysql高性能的秘密 - 深入理解索引 索引的目的在于提高查询效率,与我们查阅图书所用的目录是一个道理:先定位到章,然后定位到该章下的一个小节,然后找到页数。相似的例子还有:查字典,查火车车次,飞机航班等。即通过不断地缩小想要获取数据的范围的方式来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是说,有了这种索引机制,我们可以总是用同一种查找方式来锁定数据。 阅读全文
posted @ 2021-12-01 15:17 xuxh120 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 系统设计之:深入理解分布式系统(分区、复制、分布式事务以及系统一致性与共识) “一个可能出错的事物与一个不可能出错的事物之间的主要区别是,当一个不太可能出错的事物出错了,通常也就意味着不可修复。” -- Douglas Adams(1992) 我们将讨论分布式环境中错综复杂的权衡之道,这很可能会在你设计系统时不得不面对这些艰难的选择。.... 阅读全文
posted @ 2021-12-01 11:49 xuxh120 阅读(1417) 评论(0) 推荐(0) 编辑
摘要: Learning How to Learn 学习如何学习 Introduction 这是 UCSD 开设在 Coursera 上的课程 Learning How to Learn 的课程笔记。这门课程主要基于神经科学和认知心理学的一些研究成果讲述高效学习的理论和技巧,涉及了大脑的记忆机制、拖延的成因和应对方式,以及许多关于学习抽象复杂知识的小技巧。 由于时 阅读全文
posted @ 2021-09-17 14:48 xuxh120 阅读(785) 评论(2) 推荐(4) 编辑
摘要: JDK方法区、元空间区别 & String.intern相关面试题 你了解方法区、永久代以及元空间的功能和区别吗?String.intern()原理你懂了吗?带着疑问,一起来看看吧..... 阅读全文
posted @ 2021-09-09 17:17 xuxh120 阅读(454) 评论(0) 推荐(0) 编辑
摘要: Java最大栈深度有多大?-从一道面试题开始学习JVM -从一道面试题开始学习JVM:Java最大栈深度有多大?要想回答该问题需要对jvm内存模型有一定的了解,在Java体系结......https://i.postimg.cc/NjfzfVtR/jvm.jpg 阅读全文
posted @ 2021-09-08 14:24 xuxh120 阅读(1667) 评论(1) 推荐(0) 编辑
摘要: 一、背景 Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题(在性能测试中发现竟然与I/O操作处于同样的数量级)。基于Disruptor开发的系统单线程能支撑每秒600万订单,2010年在QCon演讲后,获得了业界关注。2011年,企业应用软件专家M 阅读全文
posted @ 2021-08-25 21:11 xuxh120 阅读(643) 评论(3) 推荐(1) 编辑
摘要: 高性能的Redis之:对象底层实现原理详解 对象 在前面的数个章节里, 我们陆续介绍了 Redis 用到的所有主要数据结构, 比如简单动态字符串(SDS)、双端链表、字典、压缩列表、整数集合, 等等。 Redis 并没有直接使用这些数据结构来实现键值对数据库, 而是基于这些数据结构创建了一个对象系统, 这个系统包含字符串对象、列表对象、哈希对 阅读全文
posted @ 2021-07-01 18:24 xuxh120 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 一、概述 Redis作为内存型的数据库,虽然很快,依然有着很大的隐患,一旦服务器宕机重启,内存中数据还会存在吗? 很容易想到的一个方案是从后台数据恢复这些数据,如果数据量很小,这倒是一个可行的方案。但是如果数据量过大,频繁的从后台数据库访问数据,压力很大;另外一方面恢复数据的时间极慢。 对于Redi 阅读全文
posted @ 2021-06-30 16:38 xuxh120 阅读(93) 评论(0) 推荐(0) 编辑
摘要: Redis 作为一种 KV 缓存服务器,有着极高的性能,相对于 Memcache,Redis 支持更多种数据类型,因此在业界应用广泛。 阅读全文
posted @ 2021-06-30 16:07 xuxh120 阅读(257) 评论(0) 推荐(0) 编辑
摘要: Redis单线程为什么如此快? 阅读全文
posted @ 2021-06-30 15:45 xuxh120 阅读(307) 评论(0) 推荐(0) 编辑