我正在寻找在两个MVC(我正在使用Symfony)驱动的网站之间共享模型数据的最佳方式。
背景资料
我们有两个网站A和B.两个网站都使用相同的软件,但有不同的客户和数据。允许客户发布内容。现在我们将推出一种新的付款方式,其优势在于用户的内容会自动在两个网站上发布。
实施?!
我有三个实施想法:
为两个应用程序使用相同的数据库。然后我必须将一些表扩展一列,以指示适当的目标网站(A / B)。
我认为这将是糟糕的设计。必须重写大量代码才能从查询结果集中排除记录,这些记录不属于相应的网站。
使用两个数据库。
在我看来,这会显着降低性能并且很难实现。始终要求数据两次。此外,将来可能会有网站C,D,E ......
通过网络服务同步两个数据库。
有些数据会被存储两次。因此,对这样一个数据的所有操作都必须执行两次(创建,读取,更新,销毁)。
现在我被卡住了,因为每个解决方案都有严重的缺点。
你有什么想法吗?如果没有,你认为哪一个是我最好的?
答案 0 :(得分:4)
我认为你的第一个选择是最好的。您将尽可能减少重复数据,并且应该具有最佳性能。您必须添加额外的检查以排除不属于每个特定网站的记录,但所有解决方案都需要工作。