本期主人公大師兄,人稱翔神,目前就任於某知名商城架構部Linux運維工程師一職,熟悉高併發,負載均衡,Redis集羣高可用,運維開發等,喜歡和同道中人分享運維那些事兒。前端
大師兄·Linux運維工程師程序員
轉眼間,大師兄畢業已經三年多了,從IT界的小白到Linux運維大神,他也算擁有一技之長,堅持投資本身的大腦,是他最驕傲的事。從C語言,到Linux運維,到Python的運維開發,再到Java,一路不斷學習,挑戰自我,心裏感慨,特寫成文章分享,和開發者們共勉。web
踏足IT,時刻在分享面試
雖然大師兄是計算機專業學生,但年少無知,大學他沒有好好學習,最初還簡單學習了一下C語言,後來電腦就成了看視頻和打遊戲的絕佳利器,關於計算機的學習少之又少,甚至連打字的指法都是在他畢業後從新練起來的,簡而言之,low爆了。服務器
偶然的機會大師兄進入到一家軟件公司,才勉強能夠混口飯吃。剛畢業的他以學習爲主,開始接觸的平臺是在UNIX系統(Linux系統的前身)中作C語言開發,領導先讓他學習Shell命令,並統計天天工做中所須要數據,大師兄開始網上找各類資料,即便平時也有練習過,但仍以爲似懂非懂,不少狀況是學了後面,忘記了前面。想要解決現狀,增長本身寫Shell腳本的能力,他主動請纓,和帶他的師傅說,把工做中不少的數據在服務器上用Shell腳本處理好,而後Download下來,直接導入Excel表格,最後整理成數據。這樣慢慢寫了幾個關於文件操做的腳本之後,他編寫Shell的能力有了很大的提升。大師兄珍惜這個練手機會,把編寫好的Shell腳本共享到博客中,給遇到一樣問題的開發者提供幫助。架構
分享與投資是運維小白提高的快速渠道併發
投資本身的大腦和學習,永遠都不能吝嗇,永遠不會過期!在找資料的過程當中,大師兄在Q羣裏偶然發現了一個阿銘Linux的培訓,看他們Linux運維的就業薪水都在8K以上,跟他畢業時的薪水相比高出好多,有些同窗的就業甚至更好,受薪水影響,大師兄心動了。2014年他給本身設定的目標簡單粗暴:半年內讓本身月薪過萬。當時好多同窗都嘲笑他有點不可能。可是他堅決了目標,索性就給本身投資了一把。那時天天晚上下班,他就隨便吃點東西,打開電腦一學就學到晚上12點,心中只有一個概念,用半年的時間補回來大學荒廢的時光,儘快找到一個體面的工做。在接下來的半年時間裏,他複習Shell命令,熟悉各類web容器:Nginx,Apahce,Tomcat等各類配置,瞭解各類負載均衡軟件LVS+KeepAlived,Nginx和HAProxy的反向代理,以及其餘運維經常使用到的軟件。最終實現了本身的小目標,拿到了某知名商城offer。負載均衡
分享倉儲運維那些事兒運維
成功入職Linux運維工程師的他,對公司架構不熟悉,出現問題無法排查,不知道看哪些選項,無從下手,對系統高可用的腦裂不會處理,無法及時解決系統故障問題。大師兄跟身邊的同事和架構師們學習了不少運維的技能。在不一樣的環境中,用不一樣的架構,對高併發,高可用,高性能有了更加深層次的認識,特別是對LVS的DR模式,NAT模式的區別,包括在Nginx併發大的狀況下的Linux系統內核參數的調優方便,請教了不少次架構師,真正掌握了從磁盤Raid,電力這些硬件設備,再到系統的主從高可用,有了更加深入的認識。ide
對於流量在服務器上的請求過程,不少同事在剛入職或者對業務狀況不是很熟悉的狀況下,對服務器的性能,併發,請求的流程並非很清楚,甚至有些研發每一個人都是負責本身的應用,對整個系統並非有很深的瞭解。這就須要作運維的大師兄來說解了,瞭解公司業務,對業務流程理解清楚了,再看倉儲系統架構是怎麼部署的,瞭解完架構之後,對請求的流程具體狀況進行抓包處理,看看請求包的走向和流程,再根據LVS原理等分析出來。
在大天然的發展中,人類是有惰性的,遇到困難天然想去逃避,想選擇舒服的生活,因此大師兄爲了剋制本身的惰性,在《恰同窗少年》電視劇中看到毛主席組織讀書社,因而他在公司找身邊朋友組織了一個學習小組,給你們安排一塊兒學習的時間,每一個人把本身學習到的新技能或者擅長的技術拿出來給你們分享分享,最終來講,收益最大的實際上是本身!
對於入門IT行業的同窗,大師兄認爲能夠從運維行業入手,運維相對開發來講,須要的邏輯思惟能力比較低,能夠快速上手,並且相對能夠找到一個不錯的工做崗位,對於新入手的小白,給出幾點建議
1.對高可用,高併發,高性能要有深刻的研究。對於這種學習,多半靠經驗。好多書都沒有真正介紹,這個須要根據業務場景選擇不一樣的架構需求;對於高併發,要和有經驗的大牛多接觸,真正想研究清楚,仍是須要看系統的性能,看系統的瓶頸,看系統自己有一個深入的認識,結合一些官網上的資料和說明加以鞏固。
2.對各類web容器要有深入的理解。小白能夠從配置文件入手,真正理解清楚配置文件的參數選項,對web容器有一個大概的瞭解和認識,對項目目錄和安裝目錄要十分了解,能夠快速部署和遷移項目。學會看日誌,不斷地的從日誌文件中發現錯誤,及時改正。關注大牛的帖子,關注Nignx中文官網。
3.對原理的掌握特別重要,必定要在開始學習的時候,搞清楚原理,能夠和有經驗的同事學習。
4.實踐出真知,不少實驗性的東西都須要本身親自去測試,不能只知道大概。
5.對於系統內核參數的調優必定要慎重,必定要屢次實驗,確保可同再上線。
6.有興趣的同窗能夠看看不少開源軟件的源碼。
7.隨着自動化,虛擬化,大數據的不斷推崇,Python這門語言對於高級運維來講已經成爲一個很重要的加分項。
大師兄和他所在組的架構師交流過,面試時,先看重一我的作代碼的邏輯思惟能力,而後就是本身的知識水品,那平時的總結就變得特別重要,因此一個優秀的程序員應該會寫學習筆記,總結過程就是本身梳理知識,再次認識和學習的機會。
生活不止眼前的苟且,還有詩和遠方,大師兄的目標是架構師。他很清楚本身的成長規劃,從初級運維工程師到高級運維,再到架構師,須要不少開發的知識。如今運維的工做對他來講已經很簡單了,目前在進階學習運維開發領域。工做以外,大師兄又學習了Python開發,基於Ansible或者SaltStack作web自動化運維,最近又在學習Java。一個架構師,最起碼是一個全棧工程師,前端的HTML、CSS、JavaScript等都須要會,本身真正作幾套系統,有一些成就,就離架構師不遠了。在學習的過程當中,不論是看書,看視頻,報班,自學,哪一種都好,可是必定要找一個適合本身節奏的學習方式,找出本身學習最高效的學習方法,祝你們早日成爲大牛。
若是你也願意分享你的故事,請加51CTO開發者QQ交流羣 312724475聯繫羣主小官,期待你的精彩故事!