運維人員必選的第一門開發語言--python

概述

今天閒聊下為什麼我比較建議運維人員去學python...

運維人員必選的第一門開發語言--python


建議運維一定要會開發

現階段,掌握一門開發語言已經成為高級運維工程師的必備技能,不會開發,你就不能充分理解你們系統的業務流程,你就不能幫助調試、優化開發人開發的程序,開發人員有的時候很少關注性能的問題,這些問題就得運維人員來做,一個業務上線了,導致CPU使用過高,內存佔用過大,如果你不會開發,你可能只能查到進程級別,也就是哪個進程佔用這麼多,然後呢?然後就交給開發人員處理了,這樣怎麼體現你的價值?

另外,大一點的公司,服務器都上幾百,上千,甚至數萬臺,這種情況下怎樣做自動化運維?用Shell寫腳本for循環?Shell也就適合簡單的系統管理工作。

到複雜的自動化任務還得要用專門的開發語言。可能自動化管理有專門的開源軟件監控也有,直接拿來用下就好了,但是現有的開源軟件如 Puppet、Saltstack、OpenStack、Zabbix、Nagios等多為通用的軟件,不可能完全適用公司的所有需求,當需要做定製、做二次開發的時候,你怎麼辦?

最後一點,不會運維開發,你就不能自己寫運維平臺複雜的運維工具,一切要藉助於找一些開源軟件拼拼湊湊,這樣怎麼做大佬,人家FaceBook一個運維工程師管2萬臺機器,運維工程師年薪十幾萬USD,哪個不是身懷絕技,開發運維兼備?


為什麼要學Python?

運維人員必選的第一門開發語言--python

開發語言那麼多種,為什麼比較建議大家去學python呢?

首先Python是個非常牛B的腳本語言,能滿足絕大部分自動化運維的需求,又能做後端C/S架構,又能用WEB框架快速開發出高大上的Web界面,所以只有當你自已有能力做出一套運維自動化系統的時候,你的價值才體現出來,才能自己去選公司,而不是公司來選你...

記得一個博士講過一句話,我覺得不錯,他說,程序效率高低,80%都是寫程序的人決定了,語言本身就佔20%,所以下次有人再說Python效率低的時候,請讓他先回去自己檢查下自己的程序多了多少無用的邏輯、循環等等。這個博士自己用Python寫的WEB程序,一臺服務器每天能處理上億請求,一秒併發近兩萬,什麼WEB框架這麼牛B? 別問它是誰,它叫tornado。


Python自學?

從開始接觸python以來,我體驗過閱讀書籍,學習MOOC,查閱文檔,谷歌搜索,逛編程社區。現在有時也有在學習python中,走了很多的彎路。成功的道路各有不同,失敗的地方卻是種種。

運維人員必選的第一門開發語言--python

如果想要自學的朋友,學習是一個長期和堅持的過程。既然決定學習,可以考慮每天花1-2個小時的時間去學習Python,週末的話投入4小時左右。

1.第一個週期:瞭解

主要系統的瞭解下Python,整理下Python到底可以做哪些事。

整理下比較有用的學習資料,博客,社區,網站等,方便自己的學習。

2.第二個週期:基礎

搭建環境,學習語法,並能初步的習慣Python,使用Python

3.第三個週期:實戰

利用Python去開發一些小工具,由小到大,同時也記錄下學Python的過程,作為自己的積累。


雖然學習是件痛苦的事情,但付出總是有回報的,說了這麼多,只想告訴那些迷茫不知所措該學什麼語言的新手們,在你還沒學好走路的時候,不要老想著將來我當上老闆了,我是開寶馬呢?還是開奔馳呢?先學會騎自行車吧!

後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~

運維人員必選的第一門開發語言--python


分享到:


相關文章: