在Web应用程序之间共享模型数据

时间:2011-03-13 14:09:54

标签: php model-view-controller web-applications symfony1

我正在寻找在两个MVC(我正在使用Symfony)驱动的网站之间共享模型数据的最佳方式。

背景资料

我们有两个网站A和B.两个网站都使用相同的软件,但有不同的客户和数据。允许客户发布内容。现在我们将推出一种新的付款方式,其优势在于用户的内容会自动在两个网站上发布。

实施?!

我有三个实施想法:

  1. 为两个应用程序使用相同的数据库。然后我必须将一些表扩展一列,以指示适当的目标网站(A / B)。

    我认为这将是糟糕的设计。必须重写大量代码才能从查询结果集中排除记录,这些记录不属于相应的网站。

  2. 使用两个数据库。

    在我看来,这会显着降低性能并且很难实现。始终要求数据两次。此外,将来可能会有网站C,D,E ......

  3. 通过网络服务同步两个数据库。

    有些数据会被存储两次。因此,对这样一个数据的所有操作都必须执行两次(创建,读取,更新,销毁)。

  4. 现在我被卡住了,因为每个解决方案都有严重的缺点。

    你有什么想法吗?如果没有,你认为哪一个是我最好的?

1 个答案:

答案 0 :(得分:4)

我认为你的第一个选择是最好的。您将尽可能减少重复数据,并且应该具有最佳性能。您必须添加额外的检查以排除不属于每个特定网站的记录,但所有解决方案都需要工作。