将更新推送到实时服务器...... FTP 并没有削减它......更好的方法?

Jon*_*n M 3 deployment ftp upload

我是 2 人团队的首席开发人员。我的合作伙伴刚刚加入该项目,尽管使用 GIT 进行版本控制等,但在代码部署方面,我们仍然陷于黑暗时代。

目前,我使用 Filezilla 通过 FTP 进行所有站点更新(这样我可以控制/负责所有上线的内容)。

我已经这样做了多年,但我们现在有一些大型 PHP 类 (300KB) 和大量流量。

简而言之,例如,每次我上传关键类“常规”时,站点都会关闭,直到文件上传完成。这一次只有 5/6 秒,但这越来越令人无法接受。

我意识到我可以以不同的名称上传文件,然后重命名这两个文件......但真的必须有更好的方法吗?

我听说过从另一台服务器同步代码,但我不知道这如何防止在上传时切换到新文件。

我们只有一台服务器(用于 DB 和 Apache),但也使用了一些云服务器(以 openx 为例)。

the*_*bit 6

rsync 在默认传输模式下完全这样做:它在传输期间在目标上创建一个新文件,并在传输完成后重命名它。

尽管如此,这对于上传“不一致”的情况无济于事 - 即您上传的文件依赖于其他尚未上传的文件。如果这是一个问题,您需要上传到完全不同的目录结构并在整个传输完成后切换。