我有一个带有联系表格的网站。用户提交姓名、电子邮件和消息,网站通过电子邮件将详细信息发送给我。
偶尔我的服务器的电子邮件系统出现问题,因此用户收到错误并且这些联系方式丢失。(不要说:获得更好的服务器,任何服务器都会时不时地出现电子邮件关闭,我们确实会收到很多提交)。
如果邮件发送函数返回错误代码,我想实现一个可以存储用户详细信息的系统。然后在每次进一步提交时,检查任何存储的提交并尝试将它们发送给我。
但是如何存储数据?
我正在使用python,所以我考虑使用搁置(单文件半数据库)。或者也许有人可以建议更好的数据格式?(我确实认为一个完整的数据库解决方案会有点矫枉过正。)
我看到的单个文件方法的问题是竞争条件:同时发送两封或多封失败的电子邮件会导致对数据文件进行两次编辑,从而导致数据损坏。
那么该怎么办?多文件解决方案,文件锁定还是其他?