我正在考虑使用网络共享文件作为锁定机制来同步不同 Windows 服务器上的程序之间的操作。
例如,当 server1 想要执行操作时,它将首先在网络共享文件夹“\share_server\share_folder\share_file”上创建一个具有排除写入权限的文件。
在 server1 的操作过程中,如果另一个 server2 想要执行相同的操作,server2 将首先尝试创建同名文件,但文件创建会失败,因为文件已经存在,因此 server2 知道其他人正在执行操作。server2 将绕过该操作。
server1 完成操作后,会关闭文件并释放锁。
你能想到这个解决方案有什么陷阱吗?非常感谢!
(我能想到的一个缺点是,出于安全考虑,某些服务器可能不允许防火墙中的网络共享。但我认为普通管理员会允许这种基本的 Widnows 服务。)