【问题标题】:Does drush commands cause outage?drush 命令会导致中断吗?
【发布时间】:2018-03-03 14:57:45
【问题描述】:

通过我们的 CD 流程,我们配置了以下 drush 命令,以便在服务器上的代码同步后执行 -

drush @hostname rr

drush @hostname cc all

drush @hostname fra -y

drush @hostname updb -y

现在我想知道执行上述命令是否会导致中断。

谢谢

【问题讨论】:

  • 是的,它可以,所有这些命令都是巨大的过程,有很多后果.. 重建注册表,恢复功能并自动生成 updb 如果您有任何错误,可能会破坏您的数据库,这些操作必须是手动的.如果您在数据库中有大量非常危险的流量或数据

标签: php drupal drush


【解决方案1】:

根据这些命令的运行频率和站点的大小,这些命令可能会给服务器带来压力并导致中断。如果这只是在部署时,那么仍然可能导致中断,具体取决于因素的范围,但这可以得到更好的控制,这样我们就可以在流量不多的时候进行部署。

在 drupalreference.com 查看 drush 命令列表

【讨论】:

    【解决方案2】:

    这在很大程度上取决于您推送的确切代码。代码越是自定义,就越有可能出现问题。我已经看到很多站点运行类似的命令作为其部署例程的一部分而没有问题。很可能是 drush cc all 由于内存限制耗尽而中止。但这不会破坏您的网站。

    为确保您的命令将在您的实时环境中成功运行,我建议您实现某种continuous integration。例如CircleCI(每月免费构建 1.500 分钟)或TravisCI(对开源项目免费)。这是一个示例:https://github.com/leymannx/drupal-circleci-behat。虽然它适用于 Drupal 8,但我想你会明白的。

    这样,您基本上将在一些临时和可配置的服务器 (Docker) 中从头开始设置您的站点,导入一个虚拟数据库,运行您的命令,也许运行一些测试 (Behat),然后只有当一切正常时站点将部署到您的部署命令再次运行的实时服务器。

    【讨论】:

      猜你喜欢
      • 2016-10-26
      • 2014-12-01
      • 1970-01-01
      • 2018-08-21
      • 2014-05-02
      • 1970-01-01
      • 2021-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多