2017-04-12 65 views
0

我有3个使用相同数据库和相同模型的Web项目。这些系统需要数据库中的部分相同的引导程序数据才能正常运行。所有系统共享库代码,将从数据库读取数据并根据代码中的引导数据(添加新数据,删除未使用,更新更改)更新数据。每个应用程序在启动时都会执行此操作,并且大多数情况下都不需要执行任何操作,因为数据已经正确。这些数据也被一些集成测试使用。如何管理跨多个项目的共享引导程序数据

问题是,当需要更改一些常用数据时,所有3个应用程序需要重新部署新的引导程序数据,否则它们将引导旧数据以防万一它们重新启动(服务器重启例如)。

我正在寻找管理多个项目的共享引导程序数据的最佳方法。

+1

为什么不把公共数据完全提取出来,并且对变化负责?那么你会有3个项目*不分享引导数据,而且会更容易。 – Kayaman

+0

这听起来像是以正确的方式进行的,但是你如何处理提取的数据,谁或应该如何管理呢? –

+1

我不太了解你的项目能够给出确切的建议,但是我不打算让几个组件“与之对抗”谁来处理数据,我真的会考虑创建一个单独的组件只处理这些数据,并让3个前战斗伙伴依靠该组件来处理数据。 – Kayaman

回答

1

您可以创建一个包含服务的插件,该服务可以满足您的所有需求,并将插件包含在所有项目中。然后只需在每个引导程序中调用插件服务即可。

+0

我认为如果数据发生变化,这种方法仍然需要对所有项目进行重新部署。目前数据已经与一个插件共享。 –