操作系統(tǒng)現(xiàn)在的情況是三分天下:unix、linux、windows。建議學習linux,主要是掌握基本的服務器管理與配置命令,能夠編寫shell腳本進行部署以及自動化管理等。
2、服務器
Nginx、Apache都是常見的服務器。這兩個服務器各有各的特點,我這里不能說哪個一定比哪個好。網上也有很多對這兩個服務性能的對比與討論可供參考。
3、數(shù)據(jù)庫
數(shù)據(jù)庫有Mysql、Oracle、SQL server等這些都是關系型數(shù)據(jù)庫,還有非關系型數(shù)據(jù)庫:memcached、mongodb、redis等。建議了解各種數(shù)據(jù)庫的特點,根據(jù)自己的業(yè)務模型,選擇最優(yōu)的搭配。
4、開發(fā)語言
開發(fā)語言有很多python、php、perl、c++、java…基本上大部分語言都可以開發(fā)后臺。每種語言都有自己的特點與框架,像這些語言都有很多公司用。
據(jù)我所知,使用python作為后臺開發(fā)的有知乎、豆瓣、quora,而且現(xiàn)在大部分的新型互聯(lián)網公司都傾向于使用python作為后臺的開發(fā)語言。
python作為后臺開發(fā)主要是可以實現(xiàn)快速的開發(fā),同時可供選擇的開發(fā)框架也有很多,比如:flask、django、tornado、bottle等。建議了解這些框架的特點。
5、TCP/IP協(xié)議
了解基本的協(xié)議:HTTP、DNS、SMTP、SNMP。。。
6、數(shù)據(jù)交換格式
protobuf、json、xml。。。
這里面最節(jié)約空間與速度最快的是protobuf,一般使用json就好了,json的在空間與速度上都優(yōu)于xml。如果是特別追求節(jié)約空間與速度就使用protobuf。
推薦使用nginx+uWSGI+flask
flask是python的一個輕量級框架,上面有介紹。nginx主要是處理靜態(tài)的請求,動態(tài)的交給uWSGI。uWSGI是一個服務器,使用它可以很方便的部署python應用,而且處理速度也比較快。
網上可以找到很多關于nginx+uWSGI+flask的配置介紹。