chauncy

null

Netty 百万连接协议解析

Netty 百万连接协议解析 Netty 是一个高性能的网络框架,被广泛的运用在底层的网络传输,在保持高性能的同时也保证了API的简单易用性,可谓是广大Java er 网络编程必选神器 在IOT的领域里面,为了更好的采集更多更准确的数据,业界也常常使用的一种方案保持长连接,然后保持长连接的手段就..


Go 语言实现分布式数据库

老司机带你用 Go 语言实现分布式数据库该分布式数据使用了raft 协议作为一致性协议为基础,raft 协议的实现在这里一个良好的分布式数据实现包括以下几个方面: 1 可用性,即是在一些机器各种故障的情况下是否能够继续提供服务 (a) 2 在分布式环境中,机器之间通过网络通信,他..


Kafka 服务端 网络层 架构

Kafka 服务端 网络层 架构 1,Reactor 模式 Kafka 网络层采用的是Reactor模式,是一种基于事件驱动模式。对应于Java的NIO 提供了Reactor模式的API.常见的单线程Java NIO 的线程模型为 流程:首先创建ServerSocketChannel 对象..


老司机带你用 Go 语言实现 Paxos 算法

老司机带你用 Go 语言实现 Paxos 算法  在理论计算机科学中,CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer’s theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点: 一致性(Consistence),等同于所有节点访..


老司机带你用 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..