我的堆栈:
我有一个Django模型方法,如果在视图中提交表单,该方法会向用户发送电子邮件。
在昨晚部署了一个不会触及以下所述应用程序中任何代码的更新后,截至今天早上提交该表单时,发送电子邮件的方法被调用了两次,导致发送了两封重复的电子邮件每次。
我已经开始记录导致使用stack_info=True
调用此方法的调用的回溯,并且对于该方法的两次调用它们都是相同的(即,该方法未被恶意代码以不同的方式调用)每次放置)相隔几百毫秒。
记录的呼叫都像:
File "/home/[path]/views.py", line 292, in my_view
foo': _foo})
File "/home/[path]/views.py", line 231, in _process_view_helper_func
thing.send_email()
File "/home/[path]/models.py", line 351, in send_email
stack_info=True,
令人困惑的是,当我在本地(Django开发服务器)和暂存服务器(与生产服务器具有相同的堆栈和配置)上提交表单时,该方法仅被调用一次,并且不会发送重复的电子邮件。
是什么导致我的生产服务器两次调用此方法,而不是我的登台服务器或本地开发服务器?