大規模的軟件生成在架構設計上最重要考慮的事也不是技術自己,而是整個結構可否流水線生產,一個程序只負責一塊,全部的設計要首先圍繞着這個原則,由於流水線的負責,因此首先要管理流水線架構自己,而不是管理具體的人,怎麼讓流水線自己順利的進行下去是重中之重,而不是卡在流水線某我的的地方。前端
例如mvc模式,MVC其實在技術上也沒有什麼大特點,更大的好處實際上是在工程上的而不是技術上的,就是儘可能把前端和後端代碼分開,前端工程師能夠專一作前端,然後端工程師專一後端,說白了就是拆解任務更好,能夠流水線生產,而不是一個程序須要作全部的事,那是做坊式的,這爲大規模開發維護提供了必要條件,其實現代工程流水線的產生比技術自己更必要。java
硬件:算法
服務器若干,局域網、互聯網。sql
服務器大體分爲如下幾種,每種服務器可若干集羣。數據庫
1. 反向代理服務器、負載平衡服務器。後端
2. 應用服務器。緩存
3. 文件服務器。安全
4. 數據庫服務器。服務器
5. 緩存服務器。前端工程師
路由算法、讀寫分離、服務器負載+內存負載+分佈式文件存儲的數據庫負載+關係數據庫負載+大數據處理
軟件:
最上層:雲平臺(虛擬雲技術)+安全模型
方案一:
方案二: