使用后台线程进行Redis批量更新的最佳实践

2024-04-26 10:03:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Redis非常陌生,所以希望这不是太幼稚…我有一个包含Redis表的Python应用程序。每天我会得到一个新的csv文件,其中包含表的新条目。我需要删除旧条目并上传新条目。但是,我不能允许其他线程在我更新时尝试查询表,从而导致中断。目前,我正在设置表的键在加载时的过期时间,然后我有一个预定的后台线程使用管道插入新的数据和一个新的过期时间。我注意到,当查询和更新重叠时,有时会出现连接被拒绝的错误,这种拒绝一直持续到我关闭服务器并重新启动它为止。我仍然不是100%是什么原因导致连接拒绝,但这对我来说是一个大问题,它让我对最佳实践感到疑惑。因为我不能用一个简单的例子来解释和再现这个问题,所以我认为在更新Redis表时最好尝试并理解最佳实践。这是进行大规模更新的首选方法吗?例如,我可以将数据热加载到另一个数据库中,然后切换这两个数据库。除此之外,有经验的Redis用户在此场景中还会推荐其他最佳实践吗?你知道吗


Tags: 文件csv数据服务器redis数据库应用程序管道