2010-07-08 80 views

回答

2

很難回答的書,沒有太多的信息.​​..... ASP.net編譯型語言會給你的表現,而不是一種解釋語言像老ASP,PHP一個小型升壓等

原因後面是編譯語言更快,因爲它們已經編譯了所有內容,而不是必須在運行中讀取和編譯的php頁面。 但是PHP也有一些技巧通過編譯來提高速度......

最後ASP.NET和PHP的速度應該是一樣的。

所以這不應該是你的主要問題。你應該將注意力放在:

  1. 擁有一個可擴展的網站,可以讓你有多個Web服務器集羣中,讓你的網站來處理所有的用戶

  2. 儘量不使用會話如果可能的變量讓用戶輕鬆集羣

  3. DB東西
  4. 價格(如果你將需要5臺Web服務器和3臺DB服務器,5 Linux上,5個阿帕奇& 5個Postgres的許可證是真的比更便宜集羣7 Windows 2003 Ser vers + 3 SQLServer 2008)
+0

謝謝您的深刻解答Cad我非常感謝您提供的所有信息,特別是價格。 我的困惑是,我的PHP頁面會被一次又一次地解釋爲每個用戶來? – 2010-07-08 10:30:02

+0

@mohsin它不像你看起來那麼糟糕。真實的你永遠不會注意到這一點。數據庫後端將成爲90%性能問題的來源,因此這種解釋性能將成爲您不得不關注的最後一件事。 – 2010-07-08 10:45:32

+0

@Col你可能是對的:) – 2010-07-08 10:48:40

3

Facebook上的人使用HipHop for PHP將PHP代碼轉換爲C++代碼,使其非常快速。

通常語言如C/C++比其他語言更快,因爲它們直接彙編到彙編代碼。所以我會選擇其中之一。

0

ASP.NET,Java和PHP(帶有加速器,如APC或eAccelerator)的速度是可比的。你不會看到它們之間有很大的性能差異。

還有其他因素比編程語言影響性能,比如數據模型,數據庫和您使用的算法。

選擇編程語言時還有其他因素需要考慮。 ASP.NET和Java都有一個很好的標準庫,PHP不一致,不完全面向對象。

0

性能有時是一個複雜的主題,它可能涉及許多任務,其淨/平均性能將決定您的應用程序的整體性能。

例如,如果您將較大的任務分解爲較小的任務,那麼小任務的執行會影響整體性能。在單獨的執行線程中運行的小任務對PHP來說是不可能的,所以你不能以這種方式獲得更好的性能。

PHP不使用外部庫,不會讓你優化性能。從個人經驗和經過一些研究後,顯然PHP無法滿足高性能應用程序的要求,我不得不開發。在類似的情況下,我發現人們已經切換到java或.net爲此。

換句話說,PHP對於特定主題(如性能)有利有弊。在對提供性能優化的能力做出任何結論之前,一定要了解您使用的語言和運行時(如果有)的限制。

編譯代碼會更快,但對於這種特殊情況PHP擴展可以利用性能損失。

正如我之前所說,其他方式存在於提高性能,但有些涉及您的PHP代碼的編譯。您是否會相信HipHop PHP適用於大規模PHP應用程序,而無需考慮LAMP堆棧的穩定性,兼容性和其他問題?

+0

線程通常不是一個問題 - 當你處理多個客戶端時,你已經有了多個線程的執行,通常由Web服務器本身提供。 – 2010-07-08 10:45:31

+0

這個評論清楚地表明我的觀點並不是。也許完全重寫將會完成這項工作。 – Andreas 2010-07-08 15:58:10

相關問題