架構師之路:剛入IT行業的人,該不該學架構?
05-29
架構師之路:剛入IT行業的人,該不該學架構?
來自專欄 代碼改變世界
起因:
小編近期決定轉架構方向(小編是一名PHP新手),小編也有差不多兩年的PHP程序開發生涯。許多人都會說現在轉架構還太早,至少需要5年以上的經驗,不然經驗太少,不足以勝任這份工作。小編也認同這點,架構師的確需要豐富的經驗。但小編還是覺得:雖然我們剛入IT行業,我們應該學習架構。
架構師需要做什麼?(大概)
- 對於整個項目進行需求分析;
- 對於整個項目的需求進行架構,如:數據層、服務層、緩存層、反向代理層、web層等需要使用什麼技術;
- 對於各個功能、模塊進行測試修正;
- 根據現有成員掌握的技術,計算成本,合理的分配工作;
- 對於整個項目的每一個流程進行嚴格把控,及時發現並解決問題,如:程序規範、資料庫設計、緩存服務等,保證項目能按照計劃執行。
架構師需要什麼條件?(大概)
- 架構師有優秀的編碼能力,解決開發人員無法解決的難題。
- 對大數據容量下的高性能、高並發、容錯的網站有架構設計和開發經驗。
- 深入了解資料庫,緩存,伺服器,負載均衡、集群、反向代理、容災等技術。
- 對於整個項目的開發過程有清晰明確的認知,對於出現的問題,能迅速給予解決方案。
- 學習能力很強、接觸知識面要很寬廣、喜歡接觸了解各種新的技術。
- 溝通能力強,能很好的表達自己的觀點,和把控整個項目的進程。
初學者適不適合學習架構?
問:既然架構師需要的要求這麼高,我剛入行沒多久,不是不適合學習架構嗎?
答:的確是這樣,但小編認為初學者更應該開始學習架構。
為什麼初學者更應該學習架構
小編認為初學者學習架構,可以更好的幫助初學者在程序路上走的更快,走的更遠:
- 程序層:所有的程序,寫到最後,無非都是要寫出已最小的消耗完成更多的事情,而對於這些,架構往往起到了一個很好的指明燈,因為架構,就是需要最優的程序。
- 數據層:架構在數據層這一塊,需要考慮很多:一致性、鎖機制、讀寫分離等,這些基礎的理論,往往能讓初學者在學習數據層這一塊,更好的往這一塊靠近。
- 服務層:對於初學者而言,是不存在什麼服務層的,而服務層也是架構中最重要的一部分,所以這一塊也能讓初學者在分析業務流程時,會考慮到服務層。
- 緩存層:同樣,初學者而言,是不存在什麼緩存層的,都是直接將請求丟給DB層的。而架構中的基礎的緩存機制,也能讓初學者去思考在何種條件下需要加入緩存層,使用怎樣的緩存機制。
- 高可用:這裡邊涉及到的cdn加速、dns分流、反向代理層分流、業務分離、數據冗餘、分散式等高深理論,都會讓初學者在做項目或者學習新知識的時候,都會有一個大概的方向,都會有一個目標。
總結
在這裡小編要總結幾點:
- 當你走上IT這條路時,你沒有一個方向的話,你就會不知道自己還缺少什麼,需要學習什麼,要怎麼去學習。
- 當你擁有一個方向的時候,雖然一開始我們離得很遠,但我們始終有了一個目標,不必在原地徘徊。雖然這個接近的過程很是艱辛,但只要我們不斷的學習,一點點的進步,終究是能到達目的地。
- 學習程序,有一個方向的引導,真的很重要!
完結
- 此篇文章純粹是小編的看法,一切都從個人出發;
- 只有適合自己的才是最好的。
推薦閱讀:
※Kamailio源碼淺析#0 架構和基本執行時序
※自助結帳,揭開新零售市場的龐大商機
※推薦一篇技術乾貨,關於數據分析平台的架構與設計
※MySQL高可用架構之MHA(1)
※藍圖系列(一):高並發、高可用、高性能、分散式系統架構