Xml/文件系统并发访问

Xml/文件系统并发访问,xml,vb.net,filesystems,Xml,Vb.net,Filesystems,我正在重写我们的内部内容管理系统,并从数据库迁移到基于xml的系统。我知道已经有很多人在做这件事了。我确实有一些顾虑,我希望得到你的意见 书写 一个用户可以写入xml文档,而另一个用户可以同时读取它。我没有使用XMLDocument或XMLTextWriter进行写入操作 阅读 多个用户能否同时解析一个xml文件,并且速度是否会显著下降?我正在使用XMLDocument进行阅读 我想我说的是大多数操作的毫秒数。我只是担心而已 书写 这取决于如何更新XML文件。如果您以原子方式进行更新,应该没有

我正在重写我们的内部内容管理系统,并从数据库迁移到基于xml的系统。我知道已经有很多人在做这件事了。我确实有一些顾虑,我希望得到你的意见

书写

一个用户可以写入xml文档,而另一个用户可以同时读取它。我没有使用XMLDocument或XMLTextWriter进行写入操作

阅读

多个用户能否同时解析一个xml文件,并且速度是否会显著下降?我正在使用XMLDocument进行阅读

我想我说的是大多数操作的毫秒数。我只是担心而已

  • 书写

    这取决于如何更新XML文件。如果您以原子方式进行更新,应该没有问题。在这种情况下,最后完成的更新将获胜

    要以原子方式更新文件,请首先打开并写入具有唯一名称的临时文件。完成编写后,将其关闭,然后在原始文件的顶部重命名。所有其他仍在使用旧副本的进程将继续这样做,但打开该文件的新进程将获得新版本

  • 阅读

    这里真的没有问题。读者之间不会相互干扰。您将得到的唯一性能下降是与多个进程之间共享CPU相关的正常性能下降


XML不适合大数据量,所以您应该有理由进行此迁移(常识提供了相反方向的迁移)。谢谢。我是这样做的,但我想确保我的假设是正确的。