前端開發(fā)程序員的Linux技術(shù)學(xué)習(xí)之路

感謝劉遄的投遞
本人程序員一枚,主攻WEB前端開發(fā),兼修Linux運(yùn)維大道,自己作一名前端開發(fā)者,我對(duì)Linux系統(tǒng)也有著很深的興趣和好奇心,于是自然有了一些鉆 研的動(dòng)力。從實(shí)用性出發(fā),或許之后的開發(fā)路上并不會(huì)有機(jī)會(huì)深入接觸到底層驅(qū)動(dòng)的實(shí)現(xiàn)亦或是對(duì)內(nèi)核的研究,但是Linux下的底層機(jī)制對(duì)開發(fā)者的啟發(fā)有著不 小的幫助。

從大環(huán)境來說,學(xué)習(xí)Linux能幫助開發(fā)者更清晰的了解整個(gè)產(chǎn)品的系統(tǒng)架構(gòu)(例****WEB****棧:服務(wù)器硬件->****虛擬化平臺(tái)->****操作系統(tǒng)->****應(yīng)用層支撐->****業(yè)務(wù)層->****用戶交互層),從而可以讓加速團(tuán)隊(duì)的溝通和工作對(duì)接,另外,獨(dú)立開發(fā)的時(shí)候在Linux上部署環(huán)境也是必不可少的技能。因此我覺得無論是從團(tuán)隊(duì)的角度還是獨(dú)立開發(fā)的角度,Linux都是一項(xiàng)必不可少的專業(yè)技能。
工欲善其事,必先利其器,你需要安裝一款適合你的Linux OS,對(duì)于喜好界面美的前端同學(xué)們來說,推薦一些圖形化的桌面環(huán)境,當(dāng)然,我最終選擇了centos系統(tǒng)作為入門的Linux操作系統(tǒng),如果你還想折騰一些有趣的同學(xué)3D桌面的compiz和蘋果風(fēng)格的docky很適合你。好,接下來是磨刀的時(shí)間了,掌握好Linux的基本命令和管理機(jī)制(文件、權(quán)限、網(wǎng)絡(luò)這些必修課)讓我在后續(xù)的學(xué)習(xí)道路上如魚得水,事半功倍。言歸正傳,滿足基礎(chǔ)前提之后,一場(chǎng)說走就走的Linux旅行就可以啟動(dòng)了,那么我們做點(diǎn)什么吧!(產(chǎn)品要上線了,前端代碼還沒有到部署到預(yù)研環(huán)境(同生產(chǎn)環(huán)境相同測(cè)試環(huán)境)跑,也不知道訪問速度怎么樣~)這里主要涉及的是掌握一個(gè)屬于前端項(xiàng)目運(yùn)行環(huán)境部署的技能,這意味著我們需要熟悉web服務(wù)器部署。
傳統(tǒng)我們可能只需要一個(gè)nginx就能解決一切問題,但就目前而言,擅長(zhǎng)node的前端攻城師輕易就搬出一套個(gè)性化的web服務(wù)器來了,無論是基于express\koa或師自己實(shí)現(xiàn)的WEB服務(wù)器都能輕易跑起來,當(dāng)然再套上一層pm2集中管理,既可以避免進(jìn)程管理的混亂,也提供了免于二次開發(fā)的守護(hù)進(jìn)程。但是,在運(yùn)維工程師的角度,這些工作是遠(yuǎn)遠(yuǎn)不夠的。比如我們需要隔離不同的WEB應(yīng)用,這時(shí)候再做二次開發(fā)成本會(huì)劇增。因此nginx的學(xué)習(xí)還是非常有必要的,我們可以讓若干個(gè)WEB應(yīng)用在不同的用戶權(quán)限下跑著,甚至可以通過chroot更嚴(yán)格控制文件權(quán)限,然后通過nginx反向代理和虛擬主機(jī)服務(wù),一個(gè)簡(jiǎn)單的測(cè)試環(huán)境就真正搭建好了。當(dāng)然nginx能提供的遠(yuǎn)不止這些,分布式session的處理、前端性能優(yōu)化模塊(pagespeed)、緩存的配置等這些就等著你深入去了解了。
緊跟時(shí)代潮流,最近docker很火?前端有了 Node.js,擴(kuò)展到了服務(wù)端的邊界,未來有更多的可能,前端現(xiàn)在也逐漸的正規(guī)化,工程化,編譯,測(cè)試,發(fā)布逐漸完善,我們是工程師,技術(shù)工種,拋開限定,多了解點(diǎn)技術(shù)豈不是更好。當(dāng)我們需要一個(gè)重復(fù)配置統(tǒng)一的環(huán)境,我們就可以利用docker一次構(gòu)建(build),在任意地點(diǎn)隨意部署(run),或者回到上一段的話題,需要隔離環(huán)境或資源時(shí),docker更快捷。除此之外docker還能應(yīng)付快速動(dòng)態(tài)伸縮量的場(chǎng)景,能更快速高效利用當(dāng)然的資源。當(dāng)然,更多優(yōu)劣各位看官可以更深入去探究。
對(duì)于想快速上手的前端程序員來講,我再給你們推薦一本書吧,《Linux就該這么學(xué)》。這是一本注重實(shí)用性的Linux技術(shù)自學(xué)書籍,作者劉遄從事于linux運(yùn)維技術(shù)行業(yè)多年,紅帽架構(gòu)師認(rèn)證RHCA認(rèn)證,學(xué)習(xí)生態(tài)圈也比較完善,有完備的書籍、網(wǎng)站、專業(yè)培訓(xùn)、論壇和其他社區(qū)的Linux學(xué)習(xí)生態(tài)圈。當(dāng)然,在Linux學(xué)習(xí)之道上更多的是需要?jiǎng)恿Γ苿?dòng)動(dòng)力提升的,一是對(duì)知識(shí)和技術(shù)的渴望、二是Linux實(shí)在太好用了。
查閱資料途徑很重要,保護(hù)隱私的上網(wǎng)方式解決方案之cisco anyconnect、shadowsocks,大量網(wǎng)絡(luò)應(yīng)用服務(wù)器,嵌入式硬件 開發(fā),智能硬件開發(fā)之樹莓派等等等等有趣實(shí)用的寶貝正在Linux上持久化更新著,所以Linux是前端開發(fā)者(乃至于技術(shù)愛好者)必備技能。

本人摘自:http://www.cnbeta.com/articles/498611.htm

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Docker — 云時(shí)代的程序分發(fā)方式 要說最近一年云計(jì)算業(yè)界有什么大事件?Google Compute Engi...
    ahohoho閱讀 15,845評(píng)論 15 147
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,545評(píng)論 19 139
  • 本文首發(fā)于 GitChat,現(xiàn)免費(fèi)放出~感謝大家的支持。 我們都知道,大學(xué)幾乎是沒有 Web 前端課的。以我所在的...
    hylerrix閱讀 5,171評(píng)論 6 60
  • 今年我二十歲,明年大概二十一。說不定后年仍然二十一。從出生到現(xiàn)在一直沒有過正式的女朋友。大學(xué)嘗試和一個(gè)感覺...
    PApudding閱讀 301評(píng)論 0 0

友情鏈接更多精彩內(nèi)容