昨天面试当中一个小伙认为MVCC可以解决RR中的幻读问题, 先说结论, MVCC不能解决幻读,很遗憾还是得用锁。 下面详细描述一下。InnoDB的MVCC, 实现的是基于多...
昨天面试当中一个小伙认为MVCC可以解决RR中的幻读问题, 先说结论, MVCC不能解决幻读,很遗憾还是得用锁。 下面详细描述一下。InnoDB的MVCC, 实现的是基于多...
MVCC(Multi Version Concurrency Control的简称),代表多版本并发控制。与MVCC相对的,是基于锁的并发控制,Lock-Based Conc...
场景 之前写过一篇海量数据中统计ip出现次数最多的博客,今天再写篇类似的,当然会有不同的地方,相同的地方我快速写过,详细的可以看之前的博客。 今天要给100亿个数字排序,10...
开闭原则的定义 开闭原则是java世界里最基础的设计原则,它指导我们如何建立一个稳定,灵活的系统。开闭原则定义如下: Software entities like class...
背景 提供一个短址服务你有没有发现,我们的任务中出现长 URL 就会比较麻烦?如果有一个短址生成器就好了。虽然市面上有很多,但是我们可以重复发明一个轮子,利用这个机会尝试一下...
本文将介绍 k8s 中的一些最基本的命令,并辅以解释一些基本概念来方便理解,也就是说,本文是一篇偏向实用性而非学术性的文章,如果你想提前了解一下 k8s 相关的知识的话,可以...
写在前面 本文是对于网上各个对redo和undo log日志解析的总结,参考文章列表在最后。 事务的4大特性:原子性、一致性、隔离性和持久性。事务的隔离性由锁机制实现。原子性...
一、简 介Loki是受Prometheus启发由Grafana Labs团队开源的水平可扩展,高度可用的多租户日志聚合系统。 开发语言: Google Go。它的设计具有很高...
gRPC是什么? gRPC是什么可以用官网的一句话来概括 A high-performance, open-source universal RPC framework 所谓...
Kafka在0.11版本中除了引入了Exactly Once语义[https://www.jianshu.com/p/0943bbf482e9],还引入了事务特性。Kafka...
I/O多路复用(multiplexing)的本质是通过一种机制(系统内核缓冲I/O数据),让单个进程可以监视多个文件描述符,一旦某个描述符就绪(一般是读就绪或写就绪),能够通...
前言 本文主要记录个人学习Golang堆内存管理,涉及到的相关内容,算是对个人所学知识点的梳理与总结。从非常宏观的角度看,Go的堆内存管理就是下图这个样子 学习内存管理,肯定...
[TOC] 本文基于1.10源码分析如之前的文章可以看到,golang中的map是不支持并发操作的,golang推荐用户直接用读写锁对map进行保护,也有第三方类库使用分段锁...
该文章主要详细具体的介绍Goroutine调度器过程及原理,可以对Go调度器的详细调度过程有一个清晰的理解,花 费4天时间作了30+张图(推荐收藏),包括如下几个章节。...
有哪几种锁? 进程内加锁 trylock 基于Redis的setnx 基于ZooKeeper 基于etcd 各种不同的锁的特点 进程内加锁: 简单,但有可能阻塞。 trylo...
1.数据库预编译起源 (1)数据库SQL语句编译特性:数据库接受到sql语句之后,需要词法和语义解析,优化sql语句,制定执行计划。这需要花费一些时间。但是很多情况,我们的一...
背景交代 大家经常用"=="来比较两个变量是否相等。但是golang中的"=="有很多细节的地方,跟php是不一样的。很多时候不能直接用"=="来比较,编译器会直接报错。 g...
golang的struct里面嵌入interface 先通过几个例子来说明这样用法。 例子1 定义一个Interface II包含两个函数声明 F1() F2() 然后定义一...
1.摘要 本文介绍LevelDB的介绍,性能,框架,核心构件原理,基本操作接口样例。 2. LevelDB概述 LevelDB是Google开源的持久化KV单机数据库,具有很...