回覆列表
-
1 # 碼農夜不收
-
2 # Linux後臺開發
1. 基礎知識
(1)Linux系統命令:Linux系統的命令非常多,是不是所有都要學呢?大家可以先掌握常用的命令,比如ls、pwd、cd、grep、find等常用的命令是必須掌握的;
(2)Linux系統程式設計:多執行緒、多程序、鎖、訊息佇列、管道等等知識;
(3)Linux網路程式設計:udp程式設計、tcp程式設計,select、poll、epoll等的使用;
2. 進階知識
(2)Linux系統程式設計:多執行緒和多程序的區別在哪裡,他們有什麼適用場景;redis為什麼用單執行緒模式,為什麼又從redis 6.0開始支援多執行緒;nginx為什麼又選用了多程序模式等等;
(3)Linux網路程式設計:udp和tcp的適用場景是怎麼樣的;select、poll、epoll三者有什麼區別,阻塞和非阻塞IO哪種更適合高併發場景;
3. 後臺開發必備技能
(1)客戶端和伺服器端協議定製、伺服器與伺服器端的協議定製;
(2)json、xml、protobuf適用場景、如何在工程上使用;
(3)mysq資料庫,如何最佳化索引,如何分庫分表、如何搭建mysql叢集;
(4)redis,如何在實際專案中使用redis;
(5)訊息佇列zeromq;
(6)nginx:負載均衡配置、雙虛擬主機等等;
(7)resetful api設計;
(8)等等等等等等的知識。
學習路線適合 大三、大四、研一、研二、研三以及工作1~5年的朋友學習。
如果我沒理解錯,您說的是Web應用的後端開發,一般這種情況,主要是後端語言和資料庫開發。
網站的後端開發,主要涉及到的是JAVA、PHP、Node.js、Python等語言。資料庫有MySQL、PostgreSQL、Oracle、memcached、Redis等等,系統方面主要是對Linux本身的基本知識的學習,之後就是系統最佳化、維護等。
知道了涉及到哪些要學習的內容,就可以開始選擇目標(目標可以是哪種語言更賺錢)。
通用學習步驟:
一、對Linux系統的學習,學會安裝開發環境、在這過程中瞭解到安裝、維護、基本命令的使用。
二、在第一步基礎上針對語言,進行學習,這一點既然做過前端,應該不是大問題,但要學會開發API(介面)。還有就是對IDE的學習SublimeText、PHPStorm、PyCharm、IDEA等。
三、資料庫的學習,一般Web前端不涉及到資料庫,一般都是呼叫後端的介面API,處理JSON資料等,這裡主要是針對SQL及Redis、Memecached的學習。
基本就這些了,還有很多內容,就不一一列舉了。需要學習的內容很多,希望你能成功!