0

我有 2 个并行的 Drupal Web 服务器正在运行(一起为一个 Drupal 实例服务),现在我需要安装 NFS。我在多 Drupal 服务器方面的经验是,每个 Drupal 实例(服务器)都使用它们自己的聚合 JS + CSS 文件(存储在:sites/default/files/jssites/default/files/css文件夹中),这些文件不能被普遍使用。(两个服务器的文件不能相同。它们使用自己的文件。)

基于这些问题,我的问题是:

  • NFS 在多 Drupal 服务器之间实际上是如何工作的?
  • 哪些directories将/需要在它们之间共享?
  • 聚合文件会发生什么?
  • Web 用户上传路径和文件会发生什么情况?(需要 Drupal 中的任何配置?)

有人可以分享这些知识/经验吗?

4

1 回答 1

2

您完全可以使用 NFS 和 Drupal。

我不明白你为什么不想在两者之间共享文件目录。

实际上,您有两种解决方案:

  • 1) 共享所有源代码树,从 web 目录根目录开始,如果您有私有文件的外部目录,甚至更早
  • 2)仅共享移动目录,并通过一些 rsync 命令在任何升级之前和之后同步所有基于代码的代码。在这种情况下,您需要在服务器之间共享:
  • 文件目录(project/www/site/default/files、project/www/site//files)
  • 私有文件目录(项目/私有)<--这是一个例子
  • php临时上传路径(例如 project/tmp),检查两个服务器是否使用正确的文件夹(这是一个 php 设置)并且该文件夹是共享的。

在 Drupal7 之前,我会使用解决方案 1,现在 Drupal 在很多情况下启动的内部文件系统树遍历的数量使得它在慢速文件系统上非常糟糕(并且 NFS 通常很慢)。在禁用所有文件系统检查(apc.stat、stat.ctime 等)的情况下使用 APC 并不会阻止 Drupal 在很多情况下尝试访问文件系统上的每个文件。所以解决方案2是首选。

对于此类安装,我没有遇到任何文件聚合问题。

于 2013-01-16T12:45:15.573 回答