尝试运行用go + redis编写的挖矿池。
当连接的工人不多时,可以正常工作。 但是,当有更多(超过1000个)工作人员尝试与服务器通信时,会导致错误
以这种方式调用redis_go。
tx:= r.client.Multi()
ms:= util.MakeTimestamp()/ 1000
推迟 tx.Close()
什么会引起问题?据我了解,最大连接数有问题吗?但是我该怎么解决。
谢谢。
ulimit为65536
更新(这种方式无济于事)
func (r *RedisClient) WriteHashRate(login string, id string, hashRate
int64, expire time.Duration) {
tx := r.client.Multi()
ms := util.MakeTimestamp() / 1000
tx.Exec(func() error {
r.writeHashRate(tx, login, id, hashRate, expire, ms)
return nil
})
tx.Close()
}