《我眼中的性能測試工程師》摘錄

       1、大局觀性能測試工程師一定要有系統化的思維,要站在整個系統測試的角度看問題。一個優秀的性能工程師必須要有相當的知識廣度。否則在測試期間,你必須依賴外界援助(比如DBA,Dev或OPS)來協助,效率不高,更關鍵的是可能會被誤導,漏掉很多性能BUG。我常常看到組裏的童鞋們在壓測時一看到TPS降了,就死盯着應用,就着急的去分析線程或做CPU Profiling。找不到原因後有時問到我時,我習慣的第一句總是 你看過DB麼?確認DB端正常麼?看過壓測客戶端麼?確認壓測端正常麼? 我個人意見:不要老憑經驗,一有重複症狀就思維定式;一定要堅持先從全局看問題,隔離到是應用層面、DB層面抑或是壓測客戶端層面後再進一步深入定位問題。

  2、技能深度。在性能測試工具方面有自己獨特的理解;同時也應該在操作系統數據庫、應用程序等方向的配置管理與調優方向上非常的熟悉。

  3、敏感。這個一方面是天賦,一方面是經驗積累吧, 很多隱蔽的性能問題確實是需要豐富的經驗才能發現,極容易漏掉:)

  4、興趣。其實這條纔是最重要的^-^


  如果說具體些通俗些,我眼裏主站真正的性能工程師是這樣的:

  1、熟悉Java(包括JVM內在機理)/c/c++。理由很簡單,主站大部分的外圍應用和中間件都是JAVA寫的,底層核心系統是c/c++寫的。

  2、精通linux管理和shell編程。理由更簡單,我一直覺得,shell熟練與否非常大程度決定了一個工程師的工作效率。

  3、對數據庫管理和性能優化有自己的實踐和心得(數據庫永遠是個性能要點)

  4、精通某一個性能測試工具。不止是使用,更包括原理,如何改造擴展。

  5、熟悉linux kernel的實現(比如內存管理、文件系統、系統調用… )。這條感觸在最近兩個月特別深,可能是受到褚霸、子團等大俠們的影響吧,如果不熟悉kernel,確實很難在底層系統的性能測試上有所真正建樹。其實這塊也算是整個質量保證部的技術短板吧,現在淘寶的linux內核組都是自測+他人review的形式,如果。。。^-^

  6、瞭解常見硬件,特別是存儲相關。這塊主要是受國外Percona公司的Peter和Vadim影響,他們能成爲世界公認的mysql性能專家,他們熟悉mysql源碼當然很重要,但也與他們那非常淵博的底層硬件知識是分不開的。


  當然以上都是我個人意見,從我自己的角度出發看的問題。其實性能測試還有很多領域,比如前端性能測試這塊,我是小白,就不發表任何相關意見了^-^  但說到底,做性能這塊關鍵一是經驗積累二是掌握相關底層技術

  至今還記得百淘65期讓我最爲難忘的細節,達人青雲在分享他的牛P經歷時總結到的:

  ● 結合優勢,做別人做不了的

  ● 發現問題,做別人沒做過的

  ● 主動出擊,做別人不愛做的

  希望自己能一直銘記這三句話,有天能成爲一個真正的性能工程師

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章