2010-10-18 103 views
3

我花了一段時間在php中開發web應用程序。它主要只是爲了學習作爲一個副項目的樂趣,但現在應用程序有一些用戶,我不想因爲開發而破壞事情而不高興。目前,我有一個非常基本的管理開發方法 - 我使用文本編輯器(ultraedit)編寫代碼並使用其內置的ftp將文件上傳到服務器。在版本控制方面,我有2個域名,並且只有在他們工作時纔將文件推送到「實時」域名,但就是這樣。這些域名託管在一個cPanel共享託管網站上,我對於它能夠處理流量的微小峯值有一些疑問。我昨天看了一下slicehost,這是爲了提高可擴展性,但從我現在的位置來看,這看起來有點像學習曲線。使php開發更穩健

我知道我可以做得比這更好,但從哪裏開始?我想,我需要三樣東西 1個意見 - 代碼書寫工具 2 - 版本控制/管理 3 - 可擴展的託管

我故意問這些在同樣的問題,因爲我想知道,如果一個選擇影響另一個。有沒有一個好的集成解決方案?

在此先感謝。

回答

8

您的問題的每個部分都已被回答。下面的列表列出了一些常用的工具,並鏈接到適當的StackOverflow搜索。有沒有在一個包,並進入有關這些工具的詳細信息,在一個問題是超出了範圍,那麼恐怕你必須做一些挖掘:

免責聲明:名單並不意味着是完整的,順序並不重要

+0

謝謝戈登。我很欣賞這個問題有很多,但是你的觀點是,在一個解決方案中沒有全部是有幫助的。感謝列表,它有助於瞭解我應該搜索的內容! – 2010-10-18 10:14:43

1

看來你一個強大的部署戰略之後是相對於一個發展一個。但是,如果我錯了,請糾正我。

在'代碼編寫工具'和 IDE的選擇是一個主觀的 討論。隨意與 一起工作,你最舒服 與我,這是Netbeans。

至於部署策略,我認爲這是最好的總結在this answer

關於可擴展託管的觀點相當寬泛。我們需要更好的預測指標來提供更好的建議。但是,現在,如果可擴展託管是一個擔心,那麼可能需要考慮某種雲託管。

2

這裏有很多事情要做。我會給你我的兩分錢。

  1. 我曾經使用超編輯。現在我使用NetBeans,它是一個完全集成的開發環境,它讓我的生活變得更加輕鬆。它也是免費的。我無法想象會回到UltraEdit。此外,這使我到了第二,netbeans有SVN和CVS集成

  2. 我會使用Subversion進行版本控制。根據我的經驗,它可以完成版本控制所需的一切。其他人使用git和mercurial等,但我認爲SVN得到了廣泛的支持並且易於設置。至於推送代碼到服務器,我也開始使用svn。我首先進入服務器並將代碼簽出到public_html目錄中,然後通過命令行設置一個別名來執行svn更新......它比在我看來更簡單。還有其他的部署方法,但我從來沒有使用過它們。看到這個問題: What is your preferred php deployment strategy?

  3. 顯然共享主機不會處理流量以及專用服務器。但在轉移到專用服務器之前,您可以採取很多措施提高性能。看看這篇文章:http://developer.yahoo.com/performance/rules.html

+0

感謝您的比較 - 將def。檢查netbeans – 2010-10-18 10:15:28

0

你看過在本地使用wamp/xamp/mamp/lamp進行開發嗎?通過ftp上傳每次更改都是一件痛苦的事情。

你可以爲本地做到這一點,並看到一切正常,然後將其推到你的測試域,並再次運行它,然後推動現場。

可能想看看SpringLoops做你的版本控制 - 這有部署的優勢,然後如果它梨形,你可以恢復它(免費帳戶獲得3部署一天)。

我現在不擔心可伸縮託管,只關注網站和編碼,你只有幾個用戶 - 等到它開始成爲問題之前,移動(但是,我建議尋找選項),但不要試圖讓所有的雲準備好 - 可能永遠不會成爲問題。

ps,與Linode一起通過Slicehost。

0

我覺得使用Aptana Studio(http://www.aptana.org)。它是一個基於Eclipse的IDE,集成了您需要的所有工具。它集成了PHP開發工具,GIT或SVN進行版本控制。

我也用過共享主機。一旦同一臺服務器上的其他站點出現DoS攻擊,我的站點也無法訪問。否則,它可以在一些優化後以合理的速度工作。它每天爲1000-3000個用戶提供服務。 專用服務器要好得多。或者您可以使用亞馬遜網絡服務。我知道他們更加昂貴。

0

1 - 代碼書寫工具

Zend Studio的。如果你打算使用Linux服務器,我會推薦Linux。

2 - 版本控制/管理

SVN + phing(如果你要建立嚴格的應用程序)。

3 - 可擴展的託管

亞馬遜或Rackspace公司。

0

對於您的編輯器,只需使用您感覺舒適和高效的產品即可。你絕對應該有版本控制。你永遠不知道什麼時候需要回滾一個或兩個版本。

我總是在生產服務器上至少保留3個版本。我使用符號鏈接將Web服務器指向最新版本。如果出現問題,您只需重新創建符號鏈接即可指向舊版本。

至於共享主機,你會驚訝於你可以得到多少帶寬。我有一個10美元/月的共享主機,每個月可以獲得大約50萬的頁面瀏覽量。通常,這不是說您的共享主機無法處理負載,而是主機提供商在同一臺服務器上放置了太多「共享」。所以這取決於同一臺服務器上其他人使用的資源量。如果您遇到問題,可以隨時要求將其移至其他服務器。