【文件属性】:
文件名称:replayq:Erlang的通用磁盘持久队列实现
文件大小:18KB
文件格式:ZIP
更新时间:2021-05-23 05:39:25
erlang elixir persistent-queue disk-queue replay-queue
重播Q
用于在Erlang中重播日志的磁盘队列
特征
队列项目被写入磁盘上的段文件中,以便在重启后不受影响。
批量弹出项目超出了大小/计数限制的队列。
提供ack/2 API来记录读取器在段中的位置。
添加配置选项max_total_bytes以限制replayq日志的总大小
使用范例
仅记忆
Q0 = replayq:open(#{mem_only => true}),
Q1 = replayq:append(Q0, [Binary1, Binary2]),
{Q2, AckRef, [Binary1]} = replayq:pop(Q1, #{bytes_limt => 1}),
ok = replayq:ack(Q2, AckRef).
二进制队列项
Q0 = replayq:open(#{dir => "/tmp/replayq-test", seg_bytes =>
【文件预览】:
replayq-master
----.gitignore(155B)
----Makefile(468B)
----src()
--------replayq.erl(23KB)
--------replayq.appup.src(183B)
--------replayq.app.src(244B)
----.travis.yml(250B)
----LICENSE(11KB)
----rebar.config(340B)
----README.md(2KB)
----rebar.config.script(259B)
----test()
--------benchmark_tests.erl(2KB)
--------replayq_tests.erl(12KB)
--------prop_tests.erl(3KB)