如何避免在 nsf 中重复票证?

how to avoid duplication of tickets in nsf?

我有不止一台应用服务器可以顺利访问,但不幸的是我遇到了票证重复的问题: 我当前的场景生成票号。在保存事件中完成表单后,但有时由于服务器问题,复制延迟因此生成了两张相同编号的票。

通常这个问题的范围很广,因为它没有显示最低研究量...

尽管如此,我还是会回答:这里有一些方法可以解决这个问题。

最简单:将服务器名称添加到票号。

所以按你的方式算,但是如果有重复,那么它们在服务器名部分是不同的:

服务器 1-0001 服务器 1-0002 服务器 2-0003 服务器 3-0004 服务器 1-0005 Server2-0005

另一种可能性是只在一台服务器上创建号码。您可以通过在该服务器上设置一个代理 运行 来处理所有还没有编号的文档,或者在保存时“向”服务器询问编号。

第一个很容易实现,但在不创建号码的服务器上,票证最多需要 2 个复制间隔才能获得其唯一号码。

第二个更棘手,因为您需要所有服务器“了解”一个中央服务器并编写代码/代理/其他任何内容以从该服务器“获取”票号并将其放入票中。

所有这些都不是微不足道的,因此在这里详细回答。