kestrel源代码阅读
2015-09-04 08:38
295 查看
kestrel 是 twitter 用scala写的消息队列,代码简短精炼,对于scala的学习还是很有增益的,随便提升一下自己Scala功底,代码是开源的,在twitter的github上(ps : 顺便可以关注一下twitter的Scala技术栈 )
学习前,先看一下特性呗: kestrel的三个连接协议(memcache、thrift、text),可配置的journal的持久化存储(甚至可以不启动),kestrel的item有超时机制、queue 也有超时机制,
配置文件: 有development、production两个scala文件,主要是消息队列、日志、文件存储(Journal配置)、端口和协议配置
tools : QDumper、Qpacker , 针对journal进行的写入和读取操作
各种协议的处理:KestrelHandler、memcacheHandler、ThriftHandler、TextHandler
状态处理 :ServerStatus负责收集数据发送到 ostrich
集群管理: ZooKeeperServerStatus
队列的处理 : 队列中的每一项 QItem、维护item插入顺序的ItemList、能够持久化的PersistentQueue,等待队列DeadlineWaitQueue,
journal操作 : journal和JournalPacker( 合并文件)
因为Scala很久没有动手了,整体的实战经验不足,看kestrel的时候,少不了Google,有时候还需要去翻阅Scala的pdf文档,后面得好好深入Scala技术栈了
徐建海
学习前,先看一下特性呗: kestrel的三个连接协议(memcache、thrift、text),可配置的journal的持久化存储(甚至可以不启动),kestrel的item有超时机制、queue 也有超时机制,
配置文件: 有development、production两个scala文件,主要是消息队列、日志、文件存储(Journal配置)、端口和协议配置
tools : QDumper、Qpacker , 针对journal进行的写入和读取操作
各种协议的处理:KestrelHandler、memcacheHandler、ThriftHandler、TextHandler
状态处理 :ServerStatus负责收集数据发送到 ostrich
集群管理: ZooKeeperServerStatus
队列的处理 : 队列中的每一项 QItem、维护item插入顺序的ItemList、能够持久化的PersistentQueue,等待队列DeadlineWaitQueue,
journal操作 : journal和JournalPacker( 合并文件)
因为Scala很久没有动手了,整体的实战经验不足,看kestrel的时候,少不了Google,有时候还需要去翻阅Scala的pdf文档,后面得好好深入Scala技术栈了
徐建海
相关文章推荐
- 《C++ Primer Plus》读书笔记
- PHP基础----HTML表单的创建与提交----21上传文件
- Scala中路径依赖代码实战详解之Scala学习笔记-42
- PHP基础----HTML表单的创建与提交----20处理 POST 请求
- PHP基础----HTML表单的创建与提交----19处理 GET 请求
- [C++] 智能指针与循环引用
- PHP基础----HTML表单的创建与提交----18表单与 PHP
- PHP基础----常用库函数----17图片打水印实例
- PHP基础----常用库函数----16生成图片
- C++之随笔(二)
- PHP基础----常用库函数----15文件操作
- PHP基础----常用库函数----14JSON格式数据的操作
- PHP基础----常用库函数----13时间和日期
- PHP基础----面向对象相关特性----12类的继承与方法重写
- PHP基础----面向对象相关特性----11成员方法和类方法
- 通过Python判断主机是否存在
- PHP基础----面向对象相关特性----10类和命名空间介绍
- php小代码----求二维数据的差集
- PHP基础----PHP常用功能----08PHP 数组
- 'VB编程 编写一个竞赛评分的函数过程。评委打分为参数(数组参数),选手得分为函数值。记分规则为:去掉一个最高分,去掉一个最低分,然后求平均。调用该函数,由键盘输入5个评委的打分(存放在数组中),输出