当前位置: 首页 > 面试题库 >

您首选的php部署策略是什么?

郁承运
2023-03-14
问题内容

我正在用PHP开始一个新项目,很想从其他开发人员那里获得一些有关他们首选的PHP部署策略的反馈。我想稍微自动化一些事情,以便一旦提交更改,便可以将它们快速迁移到开发或生产服务器。

我有使用Capistrano和Ruby进行部署以及一些基本的shell脚本的经验。

在我独自潜水之前,很高兴听到其他人在他们的项目中是如何做到这一点的。

更多的信息

当前,开发人员致力于站点的本地安装,并将更改提交到Subversion存储库。通过从svn导出标记的发行版并将其上传到服务器来进行初始部署

通常,通过手动上传更改的文件来逐步进行其他更改。


问题答案:

对于PHP,带有Phing构建脚本的SVN是可行的方法。Phing与ANT类似,但是是用PHP编写的,这使得PHP开发人员可以更轻松地修改其需求。

我们的部署例程如下:

  • 每个人都在工作时在同一台本地服务器上进行开发,每个开发人员也都在自己家里的计算机上结帐。
  • 提交触发提交后挂接,该挂接将更新登台服务器。
  • 如果测试通过,则在登台服务器上运行测试-继续。
  • Phing构建脚本已运行:
  • 关闭生产服务器,将域切换到“正在建设中”页面
  • 在生产结帐时运行SVN更新
  • 运行架构增量脚本
  • 运行测试
  • 如果测试失败-运行回滚脚本
  • 如果测试通过,则服务器将路由回到生产结帐

还有phpUnderControl,它是一个持续集成服务器。老实说,我发现对于Web项目而言,它不是很有用。



 类似资料:
  • 本文向大家介绍什么是安全策略?相关面试题,主要包含被问及什么是安全策略?时的应答技巧和注意事项,需要的朋友参考一下 回答:安全策略是一个正式且简短的计划,其中包含组织的目标,目的和信息安全程序。简而言之,它定义了确切地需要保护免受威胁的条件以及在威胁发生时如何处理情况。

  • 策略模式 一、策略模式的定义 二、策略模式的实际应用 三、策略模式中的设计原则 策略模式 策略模式的定义 策略模式,顾名思义就是指对象具有某个行为,但是在不同的业务场景下,这个行为应该有不同的表现形式,也就是有了不同的策略。让对象能再不同的场景下对同一行为有不同的实现,这就是策略模式。 下面是策略模式的类图: 首先定义一个策略接口: public interface Strategy { pub

  • 我有一个Jenkins的工作,它为master git分支使用maven构建目标“干净包部署”。但是,由于nexus repo不允许重新部署,如果Jenkins作业在没有版本更改的情况下第二次运行,它将失败并出现预期的400错误: 有人能提出一种不同的策略吗?这样,部署目标就可以运行,而不会让Jenkins的工作失败?

  • 问题内容: Prevayler保证所有写入(通过其事务)都是同步的。但是读呢? 如果不使用显式同步(在用户代码中),可以进行脏读吗? 如果将业务对象读取为: ? 如果是这样,哪种同步策略对用户代码有利? (考虑业务对象A包含业务对象Bs的集合), 使用同步集合(A中B的集合),例如从java.util.concurrent包中? 同步外部事务的集合读取与内部事务的集合写入,例如在读写之间使用“ s

  • 每个插件都可以定义自己的内容(通过),这些内容应该添加到我的应用程序中的特定位置(进入)。在该中可以看到的插件中总是只有一个。 我找不到实现这一目标的首选方法。我应该用插件中的新部分替换当前可见的部分吗?或者只是以某种方式设置已经可见的部分的内容(可能通过setContributionUri)。 我查看了。看起来它可以根据实例化,但它只有一些方法可以使新的可见。我需要将新的添加到现有的中,并可能删

  • 问题内容: 我和一个朋友正在使用SQL Server进行一个新项目。在我过去完成的项目中,SQL始终将索引放在JOIN或WHERE中使用的任何字段上。 我的朋友仅在有表演需要时才添加它们。这个想法是维护索引需要付出一定的代价,并且您想确保值得付出这一代价。可以公平地说,某些查询将不会经常使用,而且某些表将比其他表更积极地添加到表中。 因此,我正在寻找有关数据库索引的“最佳实践”的建议。什么对您有效