网络集群中有n节点。文件可能会上传到任何节点,然后必须分发给其他每个节点。这种分发不必在事务中发生(事实上它不一定,分布式事务不会扩展),并且一些延迟是可以接受的,尽管这一点很小。冲突可以任意解决(通常最后写入胜利),前提是分辨率也分配给所有节点,以便最终所有节点具有相同的一组文件。可以动态添加和删除节点,而无需重新配置现有节点。必须没有单点故障和解决此问题所需的附加框(如RabbitMQ)集群中n个Web服务器之间的文件同步
我在考虑使用consul.io进行动态配置,以便每个节点都可以参考consul来确定其他节点可用并编写守护进程(Golang),监视相关文件夹并使用ZeroMQ与其他节点通信。
感觉就像我会重新发明轮子虽然。这是一个常见问题,我希望有一些我不知道的解决方案?或者,也许我的方法是错误的,还有另一种方法来解决这个问题?