chauncy

null

老司机带你用 Go 语言实现 Raft 分布式一致性协议

老司机带你用 Go 语言实现 Raft 分布式一致性协议  随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。   为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的..


老司机带你用 Go 语言实现 MapReduce 框架

老司机带你用 Go 语言实现 MapReduce 框架  MapReduce 是 Google 提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。简而言之,就是将任务切分成很小的任务然后一个一个区的执行最后汇总,这就像小时候我们老师经常教育我们一样,大事化小,小事..


分布式一致算法 clock

aws 的 Dynamo 在数据一致性上面使用的算法为 vector clock (也叫做Data Version) 感觉挺不错,然后就去看了看paper 主要是使用的是一种 vector clock 和 logic clock要解释这一个东西,就不得不说一个神一样的纯在的lamport大神写的..


java-SynchronousQueue

在不只一个线程访问一个互斥的变量时,所有线程都必须使用同步,否则就可能会发生一些非常糟糕的事情。Java 语言中主要的同步手段就是 synchronized 关键字(也称为内在锁),它强制实行互斥,确保执行 synchronized 块的线程的动作,能够被后来执行受相同锁保护的 synchron..


消息队列 kafka

Kafka部分名词解释如下: Broker:消息中间件处理结点,一个Kafka节点就是一个broker,多个broker可以组成一个Kafka集群。Topic:一类消息,例如pv日志、uv日志等都可以以topic的形式存在,Kafka集群能够同时负责多个topic的分发。Partition:to..


mysql 索引

#索引目的索引的目的在于提高查询效率,就内比为字典一样 #索引原理 生活中都有很多例子,动车上车的时候,以及图书官等,数据库也是一样,只是更为复杂还有范围查询(>、<、between、in)、模糊查询(like)、并集查询(or)等等。数据库应该选择怎么样的方式来应对所有的问题呢?我..


java内存模型

首先计算机运行程序需要将内存里面的数据读取到CPU中,CPU对数据进行处理,然后CPU从内存读入到CPU这种代价是很大的,所以CPU根内存又加入了一道高速缓存 假设一个线程(CPU1)为变量 a赋值 a = 3; 那么CPU2,CPU3,在上面条件下能看到3这个值?如果缺少了同步,就会有很多..


java 8 自定义 收集器(collector)

需求: 将 一个容器List<Bean> 按照一定的字段进行分组,分组过后的值为特定的BEAN 里面的属性例如: 假定有这样一个Bean public class SubjectOberser{ private String subjectKe..