非商業轉載請註明做譯者、出處,並保留本文的原始連接:http://www.ituring.com.cn/article/205829web
沈劍,58到家技術總監,技術委員會負責人。曾任百度高級工程師,58高級架構師,C2C技術部負責人,58技術委員會主席,58技術學院優秀講師。數據庫
問:你曾做爲架構師參與過哪些項目?後端
我在2009年加入百度,參與與負責過許多百度hi重大項目的研發。2011年加入58同城,負責過58同城即時通信,支付系統重構,攤銷系統重構,數據庫中間件,58同城推薦系統,58同城商戶平臺App,58同城二手交易平臺APP等多個系統與項目的設計與實現。2015年9月我被調到58到家,負責到家基礎服務與架構平臺的搭建。微信
問:你曾作過不少不一樣類型產品的架構,從58幫幫到58推薦系統,再到58幫幫APP,這些不一樣類型的產品架構對你提出過哪些挑戰?架構
不一樣的經歷豐富了個人業務知識以及系統架構設計經驗。即時通信後端架構、推薦系統架構、APP架構,不一樣的業務形態有着不一樣的業務特色,也有着不一樣的系統架構特色,主要矛盾可能不同,例如:併發
58幫幫即時通信架構是基於通知的系統,對消息實時性、可靠性要求比較高,有一個路由層與其餘系統不一樣。學習
58推薦系統架構是線上與線下的綜合系統,須要支持實驗平臺,有一個分流層與其餘系統不一樣。大數據
58幫幫APP是一個無線APP,在鏈接穩定性、流量敏感性方面有着不一樣的挑戰。網站
問:寫「架構師之路」這個微信公衆號的初衷是什麼?spa
互聯網的核心是分享,寫「架構師之路」的初衷就是把本身積累的一些技術沉澱下來,分享給更多的技術人,但願你們有所收穫。下面就是「架構師之路」的二維碼,有須要的朋友能夠關注一下。
問:最近幾個月「架構師之路」更新得比較少,請問有什麼特殊緣由嗎?
今年四、5月份以後更新的就比較少了,實在抱歉。今年3月份的時候,58同城作了一次組織架構的調整,我被抽調去負責C2C技術部,接口58二手、58心寵、58優品三塊,須要從新組建團隊,規劃系統,項目管理。當時實在太忙了,就下降了更新頻率。不過你們放心,最近會持續更新,歡迎你們關注。
問:做爲一位架構師,你掌握了不少關於產品經理、數據分析,以及廣告方面的知識,請問這部分知識儲備對於一位架構師來講是不是必須的?
對產品的瞭解、對業務的瞭解是必須的,架構最終是爲業務服務的。對數據的敏感度也是要有的,在追查問題的過程當中很是有用。至於廣告方面的知識,只是我的興趣愛好,我以爲廣告比較有意思,本身學習學習而已。
問:去年你在Top100summit上分享的案例是「58同城的推薦系統架構設計與實現」,今年爲何要挑選「無線APP後端架構實現」這個主題?和你如今從事的工做有關嗎?
首先是幫幫APP項目中本身有一些經驗,想拿出來和你們分享分享;其次是APP如今很是火,APP後端架構應該不少小夥伴會感興趣。
問:對於58同城來講,無線APP後端和IM後端須要面對哪些具備58特點的架構問題?你設計和實現了哪些具備首創性的解決方案?
談不上首創性的解決方案,只能說咱們有一些本身的經驗,例如:
1)APP使用ip直連web-server以加速訪問;
2)使用id和實體分開拉取、延時拉取來節省流量;
3)使用時間戳來節省流量;
4)在服務端動態實現一些APP上的功能;
5)…
還有不少,在這裏就不展開了,感興趣的同窗能夠來參加將在今年12月4日到6日舉行的Top100summit技術大會,會上咱們一塊兒交流。
問:MySQL在被Oracle收購以後,開源程度大不如前,不少人都棄MySQL(和MongoDB)而投向PostgreSQL,58同城是否會考慮一樣的技術轉型?爲何?
短時間內咱們確定不會放棄MySQL,這是咱們的主要存儲,全面轉型代價太大。中長期,咱們會作本身的KV,Klist存儲系統,以應對本身大數據量的特殊業務需求。
問:你是否常常會去研究Youtube、Twitter這些著名網站的系統架構?你認爲其餘開發者或架構師在學習借鑑其餘網站架構的時候應該注意些什麼?
其實也談不上研究。瞭解、學習和借鑑兄弟公司的架構技術,對發展本身公司的架構技術會有幫助,能少走一些彎路。
要注意的是,借鑑的過程當中,必定不能只用「拿來主義」,必定要結合本身的業務,看這些技術本身是否真的適用。58同城的一個教訓是,MongoDB大行其道的幾年,咱們也拿來用,結果走了彎路,發現本身並不適合,如今又摒棄了MongoDB。
問:對於想要成爲架構師的人,你有什麼建議?
成爲一名架構師,我的感受三點很是重要:
1)時刻保持對業務的關注,一切拋開業務的架構設計,都是耍流氓;
2)要專一,時刻保持對技術的專一度;
3)要耐得住寂寞,沉得下心來,併發/數據/機器規模愈來愈大的時候,必定會出現不少問題,沉下來把問題解決,技術能力就提升了。