2012-09-15 15 views
2

因此,在2012年,網絡無處不在,而且擁有大量的平臺和服務,從未如此簡單。現在,我是一個半正式的程序員,我瞭解網絡技術(主要是前端),並解釋一句古老的諺語,每個人都有一個應用程序。事實上,作爲一個有抱負的[和妄想的]程序員,我也認爲我的應用程序將會令人驚歎並改變世界。服務器端體系結構對於單人Web應用程序啓動的建議

冒着無法控制地超前於自己的風險,並將我的驚人的新應用程序完全超出範圍,讓我們說我的應用程序將很快擁有1億用戶,並且在任何時間點都會有數百萬併發用戶。

MyNiceApp

爲了簡單起見,MyNiceApp是一個單頁的Web應用程序(而不是本地移動應用,變窄我們的重點在所有),這將包括含有一個可點擊的按鈕的簡單UI的和答覆的標籤。每當用戶點擊/點擊按鈕時,MyNiceApp立即通知服務器端的事件,然後數字數據源計數器遞增到服務器端,並且UI接收到最新/更新值的響應。像Twitter一樣,但不是。

技術

讓我們使用HTML和JavaScript客戶端(JS處理Ajax請求/響應),但在服務器端實現是開放的審查。關於更新(更時尚?)的服務器端技術,如NodeJS(用於處理I/O)和NoSQL(RDBMS是如此無聊的嘗試和測試是不是),已經有很多人談論並寫了很多內容,但更多比任何MyNiceApp應該是可靠和強大的,所以它確實需要確定正確的工具,無論是「舊」還是「新」。

實施的幾個問題

所以,最後,到了點(S):作爲一個人操作低預算開始(莫名其妙)工作(風險投資一定會從天上掉下來,雖然)我在設計服務器端架構時應該考慮什麼?哪些雲服務,服務器端技術,平臺(PAAS),硬件和分佈式計算模式/技術最適合處理與MyNiceApp(每個數據訪問/傳輸層)的數百萬個連接?

我想我真正要問的是:我能組裝一個嚴重的N層可擴展的服務器端架構,只有[當前]對組件有廣泛的瞭解嗎?或者,當我學習分佈式計算和數據庫體系結構碩士學位時,是否需要擱置MyNiceApp一年?

附錄: 我知道我有混合瑣事與真正關心的問題,雖然我承認,後面的任何嚴重的/成功的web應用程序/服務當然是一隊人,我也受到挑戰很感興趣/爲最大限度地利用現有技術的巨大潛力(以有限的預算)。我限制了前端的複雜性,但我懷疑真正的技術挑戰總是存在於服務器端架構中。

回答

2

在越來越不受控制超前了,完全縮放我驚人的新的應用程序超出範圍的風險,讓我們說我的應用程序將很快有100萬個用戶,並在任何時間點會有數以百萬計的併發用戶。

好吧。這不是你自己管理的。所以讓我們暫時忽略它。

爲了簡單起見,MyNiceApp是一個單頁的Web應用程序(而不是本地移動應用,變窄我們在所有焦點),這將包括含有一個可點擊的按鈕,和用於響應標籤的簡單的用戶界面的。每當用戶點擊/點擊按鈕時,MyNiceApp立即通知服務器端事件,然後數字數據源計數器遞增到服務器端,並且UI接收到最新/更新值的響應

由於應用程序非常簡單:選擇您熟悉的技術。專注於盡快啓動並運行。你選擇什麼並不重要。

當你拿到錢時,只需使用更強大的方法重寫。很可能你有一支能比你做得更好的球隊。

相關問題