吴祖洋
吴祖洋
Compact on a server will not affect on another server.
ssdb的主从同步机制是异步的,最终一致,同步的延时大概在100ms左右。 针对你这种情况,应该在你的代码逻辑上进行改变。
在比较繁忙的场景下, 会出现主从同步速度赶不上写入速度, 最终导致 OUT_OF_SYNC 出现. 如果你的使用场景是一直保持非常高的写入速度, 那么这个问题很难解决. 你需要确认一下主和从之间的网络带宽是否足够, 两者的硬盘速度是否匹配.
在某些情况下(例如经过大量写和删除操作之后重启),会导致 BinlogQueue::find_last() 阻塞比较长时间。这个问题会在未来的版本修复。
你好。leveldb/ssdb 会不断地进行数据库整理,导致硬盘动态变化。你遇到的情况可能是执行zset 时磁盘刚好满了,然后磁盘占用又自动下降回正常。这个场景在写频繁的时候可以观察到。建议你根据实际情况,预留多一些硬盘空间。
当然,也不排除当时操作系统出错的情况,但此种比较罕见。
可能的原因是硬盘出错,例如硬盘满了(满了之后又不满也一样)。你可以查看 data 目录下的 LOG 文件(注意名字大小写)。
可以检查一下 `data/LOG` 文件和 `data/LOG.old`, 看看里面有没有错误提示?
你完全可以把 ssdb 作为最终的持久化存储方案. 另外, 通过主从架构, 可使数据在异地保存多份复本, 让数据更安全.
用主从即可, 主从的配置更简便.