Mickey 小站

尘世迷途小码农

raft-paper-note

Raft 论文笔记

简介 一致性算法允许一组机器像一个整体一样工作,即使其中一些机器出现故障也能够继续工作下去,因此一致性算法在构建可信赖的大规模软件系统中扮演着重要的角色 过去 10 年里 Paxos 算法统治着一致性算法这一领域,但 Paxos 算法十分难以理解,且 Paxos 自身的算法结构需要进行大幅的修改才能够应用到实际的系统中 在设计 Raft 算法的时候, 我们使用了一些技巧来提高它的可理解...

flink-streaming-analysis

flink 流式处理源码分析

博主在 github 上有一个 repo,里面有 20 多篇文章,详细的讲解了 flink 流式处理的源码,所以这里直接粘链接了 flink 流处理源码分析

my-2019-interview-of-summer-internship

我的2019春招(暑期实习)记录

今天是我的生日,先祝自己生日快乐吧🎂 今年的春招(暑期实习)批已经基本结束了,相信大家已经拿到了心仪的offer了~本来打算暑假有空再写写这段经历,不过今天晚上正好有空就记录一下吧,希望能给正在或者今后要找实习、工作的同学一点点启发和建议 我自己是北邮研二的学生,曾经是个 Web 全栈,现在专注于大数据方向,但其实我是从去年暑假才开始接触大数据相关的技术的,所以大家不要觉得时间不够用,一...

begin-java

java小白入门

最近在面试的时候,发现很多公司的技术栈都是 Java,虽然语言不是壁垒,但还是会有很多不便,另外,我想看看 Flink 的源码,于是开始学习 Java github 上优秀的 Java 知识集合 CS-Notes Java Guide  Java 泛型的介绍 Java 泛型 ...

interview

面试总结

最近各家公司都开始暑期实习的招聘了,在这里总结一下,题目来自本人或同学的面试,本人是大数据 + 后台方向 腾讯(后台开发一面) 了解哈希嘛?说说哈希在密码学中的应用? 将任意长度的二进制值串映射为固定长度的二进制值串,这个映射的规则就是哈希算法,而通过原始数据映射之后得到的二进制值串就是哈希值 应...

Jike Algo

极客时间-算法

上学期知识付费买的极客时间算法系列一直没来得及看,最近准备快速过一遍,在这里记录一下有用的知识点 为什么大多数编程语言中,数组要从 0 开始编号,而不是从 1 开始呢? 从数组存储的内存模型上来看,“下标”最确切的定义应该是“偏移(offset)”。前面也讲到,如果用 a 来表示数组的首地址,a[0] 就是偏移为 0 的位置,也就是首地址,a[k]就表示偏移 k ...

2018-summary

2018年终总结

今天是大年初三,本该在年前完成的年终总结拖到了现在(拖延症真的恐怖),今年过年县里彻底贯彻了杜绝烟花爆竹的方针,显的有些冷清,好了,言归正传 再见,2018 过去的一年,变化非常大 2018年3月 在家安逸的度过元宵之后,踏上了回北京的火车,看着父母逐渐老去,心里还是很难受的。返回学校之后,老师依旧没有喊我回实验室,于是继续在头条实习,期间,业务进行了一次重组,我,涛神,鹏队和 de...

golang-file-lock

golang 文件锁操作

golang 的文件锁操作 这篇文章给大家介绍一下 golang 的文件锁。我们在使用 golang 开发程序的时候,经常会出现多个 goroutine 操作同一个文件(或目录)的时候,如果不加锁,很容易导致文件中的数据混乱,于是,Flock 应运而生。 Flock 是对于整个文件的建议性锁(不强求 goroutine 遵守),如果一个 goroutine 在文件上获取了锁,那么其他 ...

sync-waitgroup-source-code-analysis

golang waitgroup rwmutex 源码分析

sync.WaitGroup源码分析 针对Golang 1.9的sync.WaitGroup进行分析,与Golang 1.10基本一样除了将panic改为了throw之外其他的都一样。 源代码位置:sync\waitgroup.go。 结构体 type WaitGroup struct { noCopy noCopy // noCopy可以嵌入到结构中,在第一次使用后不可复制,使用g...

sync-once-source-code-analysis

golang once rwmutex 源码分析

sync.Once源码分析 sync.Once可以实现单例模式,确保sync.Once.Do(f func())只会被执行一次,可以初始化某个实例单例。 针对Golang 1.9的sync.Once,与Golang 1.10一样。 源代码位置:sync\once.go。 结构体 Once结构体定义如下: type Once struct { m Mutex done uin...