2011-01-13 56 views
1

我決定開始我自己的網站項目。它應該是高負荷項目,我不能決定使用哪種技術。我擅長ASP.NET MVC,但我喜歡比Python更多的Python語言。我讀了很多關於Python和Django/Pylons /等的內容,但是我沒有在python上找到任何有關高負載項目的好例子。Python是否適合高負載Web項目?

因此,問題是: Python是否適合高負荷項目?它足夠快嗎?如果是這樣,像Django/pylons /等python框架是否適合這個?或者asp.net mvc會是更好的選擇?我不喜歡Java,Ruby和PHP :)所以,我只在Python + Django/pylons/etc和asp.net mvc之間選擇。

+1

可能重複的[是否Django規模?](http://stackoverflow.com/questions/886221/does-django-scale) – gruszczy 2011-01-13 10:45:35

+0

謝謝。好的鏈接 – 2011-01-13 11:49:15

回答

4

這與平臺的「快速」並非如此相關,更多的是它擴展的程度。如果在Y上選擇X表示您需要10%,20%,50%更多的服務器資源,那就是「好」。如果這意味着你需要O(n^2)而不是O(n),那就不好。

當然,在Django和Asp.NET MVC上都建立了「高容量」網站。

最終我認爲您選擇的數據庫平臺和數據庫設計將遠遠超出您選擇的網絡應用程序平臺。

請記住,絕大多數Web應用程序的開發和維護成本遠遠超過託管成本。服務器很便宜。開發人員很貴。誰將會維護這個項目?他們有什麼專長?

1

Python是一個不錯的選擇。我是一名初級程序員,我們所做的所有項目都是使用django。你不知道用Django製作的任何項目的原因是它看起來很平常,很難說。看看:http://www.djangosites.org/(更大的項目不會出現在這裏)。另一方面,python在linux中更友好(我使用Ubuntu)。所以如果你是Win Fan,那意味着花更多的時間在解決問題上,但這是可能的。我已經看過了。 我必須說我對ASP.NET不太瞭解,所以我很難對它進行比較。 祝你好運。

+0

「..如果你是Win Fan,那意味着更多時間花在解決問題上」!那個怎麼樣? Windows是一流的Python開發平臺。在Windows上,問題往往來自假設基於Unix的執行環境的第三方Python庫,但即使在這些情況下,我們也不能談論REAL問題。 – wassimans 2011-07-31 21:27:49

1

您的問題的答案很明顯:這取決於! ;-)有很多因素可以從描述中找不到。

只是一個例子:我假設你的應用程序將使用數據庫。你會使用什麼樣的數據庫? SQL? NoSQL的?如果使用SQL,那麼我認爲SQL Server比MySQL & Co更好 - 如果您想花錢購買許可證和所需的硬件。在那種情況下,我會選擇Asp.Net,因爲支持在那裏更好。

您應該首先更好地瞭解您真正想要做什麼,然後選擇合適的工具。

+0

我們將選擇數據庫的最佳變體,許可證不是問題。我清楚地知道我想要什麼,但是我對python不是很熟悉,所以我不能說它是否可以成功。 – 2011-01-13 11:39:36

5

是的,Python會這樣做,有幾個使用Python的高負載網站。這通常是IO問題,而不是處理能力。

這也取決於「高負荷」對您的意義。爲了安全起見。使用一個web框架,你可以選擇你的零件(即不是Zope,Plone或Django),這樣你就可以用一個較慢的模板引擎替換一個較慢的模板引擎,而用一個較快的模板引擎來替換一個較慢的模板引擎,如果我是你,我會用金字塔。

也就是說,有網站上述所有可以稱爲「高負荷」以及。這只是更棘手。

3

只是一個例子:FriendFeed使用Tornado,它是用Python編寫的。看起來足夠高我。