切换到redis-erl可以将1M键的读取时间减少到16秒。不快,但是可以接受。
这是新代码:
-module(redis_bench2).-export([run/0]).-define(COUNT, 200000).run() -> io:format("Start~n"), redis:connect([{ip, "host"}, {port, 6379}, {db, 0}, {pass, "pass"}]), read_from_redis().read_from_redis(<<"0">>) -> ok;read_from_redis(Cursor) -> [{ok, Cursor1}|_] = redis:q(["ZSCAN", "if:push:sset:test", Cursor, "COUNT", ?COUNT]), io:format("Batch~n"), read_from_redis(Cursor1).read_from_redis() -> [{ok, Cursor}|_] = redis:q(["ZSCAN", "if:push:sset:test", 0, "COUNT", ?COUNT]), read_from_redis(Cursor).


