1个cakePHP核心,不同服务器上的多个应用程序

时间:2010-11-04 14:59:52

标签: cakephp

我想知道这是否可行。我想在一个位置集中我的cakePHP核心文件,并希望我的几个应用程序使用相同的核心。一个原因是更新时我只需要更新一个核心。现在我总是在每个应用程序上传整个cakephp包。

但我的应用程序并非都在同一台服务器上。

4 个答案:

答案 0 :(得分:8)

不幸的是,我不确定网络服务器是否可以跨物理服务器访问文件;即使它可以通过网络共享,这将是一个令人难以置信的性能影响。

而是尝试使用SVN或RSync工具自动化核心部署。

所以,虽然技术上可行,但我不建议。

答案 1 :(得分:4)

如果您的应用程序位于与蛋糕核心不同的服务器上,则至少需要所有服务器位于同一网络中,以便您可以从另一个服务器安装一个服务器的磁盘。否则,您需要将核心上传到每个应用程序。

假设您可以装载磁盘,您可以使用相同的蛋糕核心,只需替换 app / webroot / index.php中的路径

答案 2 :(得分:1)

我不建议这样做,但我还要补充说,更新核心是好的,但并不总是好的。特别是如果您的应用程序位于实时服务器上(用户正在处理它们)。

我在执行此类升级时过去经验不足,并且应用程序中有几个地方不推荐使用某些部分代码并且应用程序停止运行。 (我说的是1.2到1.3的迁移),所以我的理念是:如果你从一个版本的框架开始,保持相同,除非有一些关键的内容将改进或修复。

我并不是说升级很糟糕,但要小心。

答案 3 :(得分:0)

我总是建议尽可能保持核心最新,但每个更新都需要在部署之前进行充分测试。甚至1.3.x点更新也可能导致边缘情况中断。因此,如果应用程序仍在积极开发中,我将会更新应用程序,但如果它已在生产中冻结,则不一定会更新。

将几个不同的应用程序绑定到同一个核心意味着您需要在升级一个核心时同时测试所有应用程序。工作很快就会成倍增加。如果您依赖于较新的核心版本中的错误修复,这尤其令人讨厌,但这个新版本在另一个应用程序中引入了一些模糊的问题。

最后,每个应用程序都是专门为Cake核心的特定版本编写的。理论上,API不应该在点发布之间发生变化,而且在升级核心时应该保持嗡嗡声,但在实践中并不总是如何工作。因此,请将每个应用程序捆绑在一个经过测试并证明可以使用的核心。这需要额外的硬盘空间这些天真的没问题。