<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    做基礎產品的體會

    Posted on 2011-05-22 10:30 dennis 閱讀(6277) 評論(6)  編輯  收藏 所屬分類: 模式與架構 、涂鴉 、軟件工程

          一個公司大了,總有部分人要去做一些通用的東西給大家用,我這里說的基礎產品就是這類通用性質的東西,不一定高科技,但是一定很多人依賴你的東西來完成各種各樣的功能。做這樣的東西,有些體會可以說下。

        首先,能集中存儲的,就不要分布存儲,數據集中存儲有單點的危險,但是比之分布式存儲帶來的復雜度不可同日而語。況且集中式的存儲也可以利用各種機制做備份,所謂單點風險遠沒有想象中那么大。

       其次,能利用開源框架的,就不要重復造輪子。程序員都喜歡造輪子,但是造輪子的周期長,并且不一定造的更好。在強調開發效率的互聯網時代,如果能直接利用現有框架組裝出你想要的東西,迅速占領市場,比你造的高性能、高可用、高科技的輪子更實用。這個跟做新產品開發有點類似,迅速組裝,高效開發,然后再想辦法改進。

       第三,要文本,不要二進制。協議要文本化,配置要文本化。不要擔心性能,在可見的時間里,你基本不會因為文本化的問題遇到性能瓶頸。

       第四,要透明,不要黑盒。基礎產品尤其需要對用戶透明,你的用戶不是小白用戶,他們也是程序員,而程序員天生對黑盒性質的東西充滿厭惡,他們總想知道你的東西背后在做什么,這對于查找問題分析問題也很重要。怎么做到透明呢?設計,統計,監控,日志等等。

       第五,要擁抱標準,不要另搞一套。已經有了久經考驗的HTTP協議,你就不要再搞個STTP,有了AMQP協議,你就不要再搞個BMQP。被廣泛認可的標準是一些業界的頂尖專家制定出來的,他們早就將你沒有考慮到的問題都考慮進去了。你自己搞的那一套,隨著時間推移你會發現跟業界標準越來越像,因為面對的問題是一樣的。使用標準的額外好處是,你有一大堆可用的代碼或者類庫可以直接使用,特別是在面對跨語言的時候。

        第六,能Share nothing,就不要搞狀態復制。無狀態的東西是最可愛的,天然的無副作用。水平擴展不要太容易。

        第七,要將你的系統做的越不“重要”越好,如果太多的產品依賴你的系統,那么當你的系統故障的時候,整個應用就完蛋了。我們不要擔這個責任,我們要將系統做的越來越“不重要”,別人萬一沒了你也能重啟,也能一定時間內支撐正常的工作。

        第八,要專注眼前,適當關注未來。有遠見是好事,但是太多遠見就容易好高騖遠。為很小可能性設計的東西,沒有機會經歷實際檢驗,當故障真的發生的時候,你也不可能完全信賴它。更好的辦法是將系統設計得可介入,可在緊急情況下人工去介入處理,可介入是不夠的,還要容易介入。

        第九,不要對用戶有假設,假設你的用戶都是smart programmer,假設你的用戶不需要位運算,假設你的用戶要同步不要異步。除非你對這個領域非常熟悉并實際使用過類似的東西,否則還是不要假設。

        第十,咳咳,似乎沒有第十了,一大早憋了這么篇無頭無腦的Blog,大伙將就看看。






    評論

    # re: 做基礎產品的體會  回復  更多評論   

    2011-05-22 20:02 by rox
    不錯的總結。有感覺。謝了!

    # re: 做基礎產品的體會  回復  更多評論   

    2011-05-22 22:00 by yzx226
    嚴重贊同這些觀點,可否稍微解釋一下“第六,能Share nothing,就不要搞狀態復制。”,我沒能太理解這一點,謝謝!

    yzx226@gmail.com

    # re: 做基礎產品的體會  回復  更多評論   

    2011-05-22 23:51 by pooch
    保持狀態一致性比較麻煩,復雜容易出錯吧@yzx226

    # re: 做基礎產品的體會  回復  更多評論   

    2011-05-23 09:43 by YangL
    這些深有同感,很不錯。不過做基礎產品想不重要都難啊。。。

    # re: 做基礎產品的體會  回復  更多評論   

    2011-05-23 10:41 by mzzz
    不改變大家的開發習慣,擴展原有的標準

    # re: 做基礎產品的體會[未登錄]  回復  更多評論   

    2011-05-26 00:17 by gavin
    哎,現在有時候很浮躁,無法靜心去做事情,有時候盲目,或錢或其他......
    主站蜘蛛池模板: 在线观看亚洲AV日韩AV| 亚洲精品你懂的在线观看| 成人国产mv免费视频| 国产亚洲一区二区三区在线观看| 亚洲日韩av无码| 亚洲AV无码不卡在线播放| 国产jizzjizz免费视频| 亚洲国产精品国产自在在线| 亚洲色WWW成人永久网址| 亚洲av中文无码乱人伦在线播放 | 免费乱理伦在线播放| 精品亚洲一区二区三区在线观看| 免费无码又爽又高潮视频| 免费a在线观看播放| 久久亚洲国产午夜精品理论片 | 国产亚洲精品va在线| 亚洲色图黄色小说| 亚洲av永久无码一区二区三区 | 免费的黄色网页在线免费观看| 91亚洲性爱在线视频| 亚洲精品色播一区二区| 一级做a毛片免费视频| 8888四色奇米在线观看免费看| 七次郎成人免费线路视频| 午夜精品一区二区三区免费视频 | 日韩视频免费在线| 亚洲理论电影在线观看| 国产成人精品日本亚洲专一区 | 亚洲中文字幕一二三四区苍井空| 美女露100%胸无遮挡免费观看| 亚洲国产高清国产拍精品| 三根一起会坏掉的好痛免费三级全黄的视频在线观看 | 午夜影视日本亚洲欧洲精品一区| 久久精品国产亚洲AV久| 日本一区二区在线免费观看| 99re6在线视频精品免费下载| 国产高清在线免费| 亚洲国产精品久久久久网站 | 久久久久久久亚洲Av无码 | 中文在线观看国语高清免费| 69堂人成无码免费视频果冻传媒|