随笔分类 - golang
go语言学习
摘要:openfalcon源码分析之graph 本节内容 1. graph功能 2. graph源码分析 2.1 graph中重要的数据结构 2.2 graph的简要流程图 2.3 graph处理数据过程 2.4 graph数据迁移 3. graph设计优缺点 优点: 缺点: 1. graph功能 在整个
阅读全文
摘要:本节内容 1. agent功能 1.1 agent上报数据 1.2 agent与HBS同步 1.3 agent Http服务 2. agent源码分析 2.1 初始化config配置 2.2 初始化根目录,本地IP和rpc连接池 big mapper 2.3 定时同步各种数据 2.4 HTTP服务
阅读全文
摘要:本节内容 1. transfer功能 transfer接收数据来源 transfer数据去向 transfer的一致性hash transfer的一致性hash key的计算 2. transfer源码分析 2.1 初始化连接池,发送队列 2.2 初始化rpc和socket接收端 2.3 初始化ht
阅读全文
摘要:openfalcon源码分析之hbs 本节内容 1. hbs功能 2. hbs源码分析 3. hbs设计优劣 1. hbs功能 hbs在整个open falcon项目中承担的角色就是连接数据库,作为数据库缓存,缓存配置,主要给agent和judge提供服务。 2. hbs源码分析 hbs源码分析将列
阅读全文
摘要:openfalcon源码分析之Judge 本节内容 1. Judge功能 2. 源码分析 3. 设计优缺点 1. Judge功能 在open falcon中,Judge模块的功能是通过从HBS上同步告警的strategys(告警策略),及Expression,用来在接收transfer上报过来的数据
阅读全文
摘要:GO语言heap剖析 本节内容 1. heap使用 2. heap提供的方法 3. heap源码剖析 4. 利用heap实现优先级队列 1. heap使用 在go语言的标准库container中,实现了三中数据类型:heap,list,ring,list在前面一篇文章中已经写了,现在要写的是heap
阅读全文
摘要:GO语言list剖析 本节内容 1. 使用方法 2. list提供的方法 3. 源码剖析 1. 使用方法 在GO语言的标准库中,提供了一个container包,这个包中提供了三种数据类型,就是heap,list和ring,本节要讲的是list的使用以及源码剖析。 要使用GO提供的list链表,则首先
阅读全文