2009-11-17 56 views
1

假设,如果用户在文本文件上点击“保存,保存,保存,保存”许多次,一次更改单个字符并在处理第一次保存之前管理重新保存5次,那么最佳实践是什么在那种情况下?假设我们没有“批处理过程”选项......或者也许他们在处理完所有的文件之前,先保存,保存,保存并保存4个文件。控制发出HTTP请求的推荐方法?

您是否应该排队请求并逐个处理它们?或者你应该让它发生,它会以某种方式自行解决?

谢谢!

回答

2

我们通常在页面初始化时在页面中发送GUID,并在保存请求中发送它。服务器检查一个共享的短期内存缓存 - 如果它是一个未命中,我们存储GUID并处理保存,如果它是一个命中,我们作为一个重复请求失败。这允许每页加载一次保存(除非您在成功保存时重新执行GUID)。

+0

我只是想知道,如果这是服务器的问题,还是它有一切内置来处理?我在想这里的Rails :) – 2009-11-17 07:25:08

+0

只取决于编辑语义。如果“上一次作家获胜”没问题,并且您没有任何应用程序级事务或锁定问题,我不会担心。如果你在谈论信用卡交易或其他有主要副作用的东西(保存到磁盘,创建文件等),那么是的,你需要以某种方式锁定它。 – nitzmahone 2009-11-17 08:46:14

2

如果您的save操作足够轻便,用户点击保存的次数应该无关紧要。与数千用户的负载相比,单个用户可以产生的流量通常相当轻。

建议您在撰写Gmail邮件或在Google文档中工作时观看HTTP流量。两者都非常健谈,并经常将更新发送回服务器。