文件名称:dqueue:基于磁盘的队列
文件大小:15KB
文件格式:ZIP
更新时间:2024-07-28 03:06:37
Go
简介 之前写的taskbuffering的aofutil是个简易的写磁盘的工具,在这个基础上重新写了dqueue(disk based queue),dqueue是一个基于顺序写文件的队列,包装了一层redis协议 通过一个索引文件,和多个数据文件来组织数据,数据文件按照1MB分成N个文件,自动删除已经消费的队列数据文件 从库会订阅主库的变更,主库异步来发布自己变更,但是不保证从库和主库的一致,也就是不需要从库的ack。通过go的channel可以无阻塞的通知同步协程 使用 下载源码 确定已经设置了GOPATH go get github.com/wudikua/dqueue 下载依赖 go get github.com/julienschmidt/httprouter 一个http服务 go get github.com/wudikua/go-redis-server 一个redis代理
【文件预览】:
dqueue-master
----check_db.go(872B)
----idx()
--------dqueue_idx_test.go(2KB)
--------dqueue_idx.go(4KB)
----db()
--------dqueue_db_test.go(3KB)
--------dqueue_db.go(5KB)
----proxy()
--------redis.go(4KB)
--------redis_test.go(95B)
----fs()
--------dqueue_test.go(2KB)
--------dqueue.go(5KB)
----global()
--------global.go(156B)
----main.go(155B)
----replication()
--------dqueue_repl_test.go(598B)
--------dqueue_repl.go(4KB)
----README.md(2KB)
----slave.go(181B)