多个微服务symfony应用程序共享供应商文件夹

时间:2017-09-28 14:27:00

标签: php symfony composer-php share microservices

我们正在开发一个具有微服务架构的新Web项目。

我们需要大约5个Front Web项目,以及大约5个API微服务与API管理器协调。

我们计划使用Symfony2 Framework,但我认为它太重了。我的意思是因为作曲家的实例将从symfony组件,核心...以及用于每个项目的相同库(例如phpmailer)下载所有相同的库。

实际上,我问自己有关供应商文件夹的一个很好的共享策略,假设每个SF2项目都使用共享供应商文件夹并计算唯一文件夹中的所有库。 我们需要为每个项目中的每个库提供相同的版本。

有人在这种分享方面有一些实验吗?最佳做法?每个项目最好有一个供应商文件夹吗?

公开讨论!

干杯。

2 个答案:

答案 0 :(得分:1)

您可以将vendor dir定义为composer.json

中的shares文件夹
{
    "config": {
        "vendor-dir": "/usr/share/php/composer/vendor"
    }
}

它可以帮到你吗?

答案 1 :(得分:0)

你不应该在微服务之间分享任何东西。这是因为您将失去微服务的主要优点:您可以独立部署每个微服务

他们也应该松散耦合。他们应该不了解其他技术。这意味着如果您在一个微服务中从PHP更改为Java,那么其他的不会受到影响。事实上,他们甚至不应该知道或关心。与数据库相同。