2010-05-20 76 views
5

過去幾天我一直在設計一個網站,並且一直在對網站水平縮放的不同方面進行一些研究。如果事情按計劃進行,幾個月(幾年?),我知道我需要擔心擴大網站的規模,因爲它最終消耗的資源是巨大的。因此,這讓我想到了什麼時候開始思考和設計可擴展性的最佳時機?如果你開始得太早,你可能會輕易地使你的設計複雜化,並且使其無法實際構建。你也可能會陷入細節,架構,任何事情,最終都無法完成。另外,如果你確實得到它的工作,但該網站從未起飛,你可能浪費了一大筆額外的努力。什麼時候開始考慮縮放?

另一方面,你可以在路上爲自己節約大量的精力。如果從頭開始設計大型會使後來變得更容易,讓它變得更大,並且重寫很少。

我知道我正在做什麼,我已經決定在縮放方面至少做出幾個選擇,但我不打算做一個完整的思維變化來擴大規模完全。值得注意的是,我將數據庫從傳統的關係設計重新設計爲類似於下面鏈接的Reddit網站上的建議,並且我將嘗試給memcache一個嘗試。

因此,基本問題什麼時候是開始思考或擔心縮放的好時機,以及什麼時候這樣做的好設計,技巧等?

幾件事情我一直在讀,對於那些有興趣誰:

http://www.codinghorror.com/blog/2009/06/scaling-up-vs-scaling-out-hidden-costs.html

http://highscalability.com/blog/2010/5/17/7-lessons-learned-while-building-reddit-to-270-million-page.html

http://developer.yahoo.com/performance/rules.html

回答

1

一個良好的,雖然出,明智的架構應該允許您可以在不需要過多資源的情況下進行擴展。這應該從項目的一開始就考慮到。

現在有很好的架構和企業設計模式可以從Rails,MVC,Spring等中獲得,它們允許你在一個完善的,被很好理解的基礎上開發軟件,它提供了必要的機制擴大。

4

在某種觀點下,縮放技術是相當被接受和鞏固的。所以相反,依靠網絡鏈接/文章,我會在開始這個問題之前閱讀有關該主題的書籍。

我建議:

相關問題