我们正在尝试为我们的生产环境实施分片。我们面临的问题是我们推迟了一些后台处理的工作。如果我们更新一个模型并在我们的延迟作业中放入一个条目以在延迟作业中进行游行,那么它正在获取该对象的旧值并且它是不一致的。例如,用户模型有名称、位置,如果我想在他改变位置时触发邮件,就像
usr = User.find(1)
usr.position = "foo"
usr.save
在延迟工作中,如果我获取 usr = User.find(1) 它正在获取旧值。我们在生产环境中使用乘客,mysql 我们仍在 Rails 2.3.18 上。在我们的应用程序操作中遇到同样的问题之前,这也是由 mysql 查询缓存中的错误引起的,我们停止使用它,问题在我们的应用程序操作中得到解决