2012-03-15 62 views
0

我想比較一些Web框架(Ruby on Rails和ASP MVC3)的性能,但我不知道如何開始......我應該測量每個框架渲染速度有多快e 10k長的循環或者渲染10k行html的速度有多快?有沒有可以幫助你的項目?另外,如何監控服務器負載?任何幫助表示讚賞!如何比較Web框架的性能

Thijs

+0

大型網站同時運行 - 您的團隊的經驗和硬件是什麼? – 2012-03-15 19:55:20

+0

它不在團隊中,我只是想創建一些我自己的測試來比較兩個框架。 – Thijs 2012-03-17 08:41:46

回答

3

尊重,這是一個無法回答的問題。保時捷比普銳斯快嗎?呃,不,不是保時捷在店裏的時候:-)。

答案取決於你想要完成什麼,怎麼做,以及如何編碼。例如,Rails盡其所能地透明地緩存數據,然後輕鬆地緩存命令中的內容。當然,有一種方法可以在ASP MVC3中做同樣的事情,但是這很簡單嗎?

你能找到,僱用和培養一個合適的團隊,知道如何使用框架嗎?組織的文化是什麼(Windows或Unix?)。我可以在MS-Access中編寫一個非常快速的應用程序,並且在Rails中與高性能數據庫相同的應用程序效果不佳,而MS-Access應用程序會贏。與應用程序寫得很好,優化或其他任何事情相距甚遠。

現在,一個編寫良好的應用程序通常對數據I/O有性能限制,如果是這種情況,那麼它就是您使用哪個數據庫可能很重要。你提出的循環測試幾乎不會測試任何東西,除非你正在編寫一個計算pi到十億分之一的應用程序,或者其他東西。

我確定有已發佈的應用程序框架的基準測試,但他們需要對應用程序的實際操作做出假設。

現實情況是,任何合理的框架(包括你提到的兩個框架)都可能在大多數場景中儘可能快地完成,再次,你做了什麼,以及你如何設計和實現它更可能是性能問題的罪魁禍首。

一旦你選擇,有一個名爲RPM NewRelic的一個偉大的(真棒)工具與幾個框架的工作 - 我用它與Rails的,和它給你的內部指標的詳細程度是令人難以置信。

我不是故意滑倒,也不是無益。但是這對我來說有點痛苦 - 在很多情況下,人們會說「我們應該用foo而不是酒吧,因爲foo更快」,並且隨着bar被foo取代,幾周過去了。然後有一點不兼容。還有一個意外的錯誤。然後,由於某種原因,新的速度會慢一點。然後,它得到優化後,它終於一樣快。

現在我將從我的肥皂箱中下車:-)

+0

感謝鏈接到Newrelic!有沒有免費的替代品? – Thijs 2012-03-15 19:45:49

+0

M $土地什麼都沒有,我懷疑。但是在Linux的「沒什麼好處」的世界裏,還有許多性能測量,監控,測試和其他工具。哎呀,Rails在其日誌記錄中有幾乎內置的性能工具,並且它是開箱即用的。實際上,至少對於Rails來說,NewRelic有一個開發者可以使用的免費版本 - 並不像它們基於服務器的版本那麼強大,但仍然令人心曠神怡。 – 2012-03-15 20:00:47