问题 - 多个进程想要同时更新一个文件。我不想将文件锁定功能用作高负载环境,一个进程可能会阻塞一段时间,这是我不想要的。我想要像所有进程将数据发送到队列或某个共享位置或其他东西,一个主进程将继续从那里获取数据并写入文件。所以没有进程会被阻塞。
使用套接字编程的一种可能性。所有进程都会将数据发送到单个端口,并且主进程继续侦听这个单个端口并将数据存储到文件中。但是如果主进程停机几秒钟怎么办。如果发生这种情况,我可能会写入某个文件基于时间戳,然后再同步。但我将其搁置并寻找其他解决方案。(没有数据丢失)
另一种可能性可能是锁定进程要写入的文件的特定段。基本上每个进程都会写一行。我不确定它对于高负载系统会有多好。
请为此问题提出一些解决方案。