阿里P8架構師談:成長爲Java架構師必須突破的11個技術點

阿里P8架構師談:成長爲Java架構師必須突破的11個技術點

架構師之路沒有捷徑,需要在不斷在工作中去實踐這些知識點。

1、Java基礎技術體系掌握牢固:
JVM內存分配
垃圾回收
類裝載機制
JVM性能優化
反射機制
多線程
網絡編程
常用數據結構和相關算法

2、對面向對象的軟件開發思想有清晰的認識、熟悉掌握常用的設計模式:
熟練使用UML工具以及各種流程圖
經典的設計模式會手寫以及熟知使用場景
概要設計與詳細設計
面向對象的核心思想需要運用在代碼編程中,例如:高內聚低耦合

3、目前流行開源框架,除了熟練使用,還需要掌握核心原理和實現
Spring
Springmvc
MyBatis
建議看源碼以及debug配合掌握實現原理。

4、熟悉Oracle、MySQL等SQL,以及MongoDB等NoSQL開發。
特別是MySQL,相關的索引優化、SQL查詢優化、慢的事務優化等,以及MySQL的分庫分表等也需要掌握。
MongoDB等典型的NoSQL大數據場景設計

5、CDN,以及分佈式緩存系統Redis或 Memcached的設計和研發
CDN與分佈式緩存的設計原理其實是一致的,重點你需要掌握兩者之間的區別和使用場景。

6、熟悉底層中間件、分佈式技術(包括緩存、消息系統、熱部署)、消息中間件:Kafka、ActiveMQ、RabbitMQ,工作流中間件:JBPM。
分佈式技術涉及範圍比較廣,例如相關的消息中間件就會涉及到3個以上,爲什麼要選擇Kafka或者RabbitMQ,選擇和比較需要掌握。
除此之外,很多內部系統還會涉及到JBPM工作流中間件等。

7、精通shell編程,熟練應用awk、sed、grep、strace、tcudump、gdb等常用命令。

8、有大型分佈式、高併發、高負載(大數據量)、高可用性系統設計開發經驗。
大型分佈式就會設計到高併發解決方案,以下有相關的知識。

9、對配置管理和敏捷研發模式有所瞭解(svn,git)。

10、熟悉常見的一些解決方案及其原理:單點登錄、分佈式緩存、SOA、全文檢索、消息中間件,負載均衡、連接池、流計算等。

11、市面上主流技術的特點及業務瓶頸,例如秒殺系統等如何設計。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章