Това може би е нещо общо с конфигурацията на вашия Redis сървър.
Можете да стартирате MONITOR от redis cli на вашата хост машина.
Обикновено се свързвате чрез cli например:
https://redis.io/topics/rediscli
redis-cli -h <your server ip> -p <your server port> -a <if you have a server password enabled>
$ redis-cli -h host -p port -a password
Портът по подразбиране е 6379
Това ще покаже всички взаимодействия със сървъра Redis, но не стартирайте това, тъй като винаги работи, той има по-висока производителност, но е чудесен за отстраняване на неизправности.
https://redis.io/commands/monitor
$ redis> monitor
1339518083.107412 [0 127.0.0.1:60866] "keys" "*"
1339518087.877697 [0 127.0.0.1:60866] "dbsize"
1339518090.420270 [0 127.0.0.1:60866] "set" "x" "6"
1339518096.506257 [0 127.0.0.1:60866]
Това трябва да ви даде индикация за проблема.
Можете също да изпълните командата INFO от redis cli, за да видите статистика на сървъра и информация, като например използване на паметта.
https://redis.io/commands/info
redis> INFO
# Server
redis_version 999.999.999
redis_git_sha1:3c968ff0
redis_git_dirty:0
redis_build_id:51089de051945df4
redis_mode:standalone
os:Linux 4.8.0-1-amd64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:6.3.0
process_id:8394
</snip>
Също така използвайте командата INCRBY от вашия Redis клиент във вашия код, в противен случай ще трябва да увеличите стойността си на броене, преди да я зададете, което не е в съответствие с асинхронния модел.
https://redis.io/commands/incrby
Мисля, че проблемът ви е, защото това е асинхронно, нали?
Така че преброяванията не са синхронизирани, когато бъдат публикувани, тъй като някои може да се изчакат преди други.
Така или иначе бихте искали да опитате да ги публикувате синхронно, за да видите дали това има значение, тогава знаете, че това е проблемът и би било по-добре да използвате командите redis INCR за тази цел.