国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

文字

如果你在手動的進行數(shù)據(jù)庫結構的修改或者在更新文件前手動運行測試,請三思而后行!因為隨著每一個額外的手動任務的添加都需要去部署一個新的版本到應用程序,這些更改會增加程序潛在的致命錯誤。即使你是在處理一個簡單的更新,全面的構建處理或者持續(xù)集成策略,構建自動化絕對是你的朋友。

你可能想要自動化的任務有:

依賴管理

靜態(tài)資源編譯、壓縮

執(zhí)行測試

文檔生成

打包

部署

部署工具

部署工具可以認為是一系列的腳本來完成應用部署的通用任務。構建工具并不屬于應用的一部分,它獨立于應用軟件 ‘之外’。

現(xiàn)在已有很多開源的工具來幫助你完成構建自動化和部署,一些是用 PHP 編寫,有一些不是。應該根據(jù)你的實際項目來選擇最適合的工具,不要讓語言阻礙了你使用這些工具,如下有一些例子:

Phing 是一種在 PHP 領域中最簡單的開始自動化部署的方式。通過 Phing 你可以控制打包,部署或者測試,只需要一個簡單的 XML 構建文件。Phing (基于Apache Ant) 提供了在安裝或者升級 web 應用時的一套豐富的任務腳本,并且可以通過 PHP 編寫額外的任務腳本來擴展。It’s a solid and robust tool and has been around for a long time, however the tool could be perceived as a bit old fashioned because of the way it deals with configuration (XML files).

Capistrano 是一個為 中高級程序員 準備的系統(tǒng),以一種結構化、可復用的方式在一臺或多臺遠程機器上執(zhí)行命令。對于部署 Ruby on Rails 的應用,它提供了預定義的配置,不過也可以用它來部署 PHP 應用。如果要成功的使用 Capistrano ,需要一定的 Ruby 和 Rake 的知識。對 Capistrano 感興趣的 PHP 開發(fā)者可以閱讀 Dave Gardner 的博文 PHP Deployment with Capistrano ,來作為一個很好的開始。

Rocketeer gets its inspiration and philosophy from the Laravel framework. Its goal is to be fast, elegant and easy to use with smart defaults. It features multiple servers, multiple stages, atomic deploys and deployment can be performed in parallel. Everything in the tool can be hot swapped or extended, and everything is written in PHP.

Deployer 是一個用 PHP 編寫的部署工具,它很簡單且實用。并行執(zhí)行任務,原子化部署,在多臺服務器之間保持一致性。為 Symfony、Laravel、Zend Framework 和 Yii 提供了通用的任務腳本。Younes Rafie 的文章 Easy Deployment of PHP Applications with Deployer 對于利用此工具部署應用來說是一份非常好的指導。

Magallanes is another tool written in PHP with simple configuration done in YAML files. It has support for multiple servers and environments, atomic deployment, and has some built in tasks that you can leverage for common tools and frameworks.

持續(xù)集成

持續(xù)集成是一種軟件開發(fā)實踐,團隊的成員經(jīng)常用來集成他們的工作, 通常每一個成員至少每天都會進行集成 — 因此每天都會有許多的集成。許多團隊發(fā)現(xiàn)這種方式會顯著地降低集成問題, 并允許一個團隊更快的開發(fā)軟件。

– Martin Fowler

對于 PHP 來說,有許多的方式來實現(xiàn)持續(xù)集成。近來 Travis CI 在持續(xù)集成上做的很棒,對于小項目來說也可以很好的使用。Travis CI 是一個托管的持續(xù)集成服務用于開源社區(qū)。它可以和 Github 很好的集成,并且提供了很多語言的支持,包括 PHP 。


上一篇: 下一篇: