• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Fork me on GitHub
            隨筆 - 215  文章 - 13  trackbacks - 0
            <2016年9月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678


            專注即時通訊及網游服務端編程
            ------------------------------------
            Openresty 官方模塊
            Openresty 標準模塊(Opm)
            Openresty 三方模塊
            ------------------------------------
            本博收藏大部分文章為轉載,并在文章開頭給出了原文出處,如有再轉,敬請保留相關信息,這是大家對原創作者勞動成果的自覺尊重!!如為您帶來不便,請于本博下留言,謝謝配合。

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            相冊

            Awesome

            Blog

            Book

            GitHub

            Link

            搜索

            •  

            積分與排名

            • 積分 - 217520
            • 排名 - 118

            最新評論

            閱讀排行榜

            http://www.zhihu.com/question/21409296
            http://blog.csdn.net/johnhomsea/article/details/18944647

            1、Go有什么優勢

            • 可直接編譯成機器碼,不依賴其他庫,glibc的版本有一定要求,部署就是扔一個文件上去就完成了。
            • 靜態類型語言,但是有動態語言的感覺,靜態類型的語言就是可以在編譯的時候檢查出來隱藏的大多數問題,動態語言的感覺就是有很多的包可以使用,寫起來的效率很高。
            • 語言層面支持并發,這個就是Go最大的特色,天生的支持并發,我曾經說過一句話,天生的基因和整容是有區別的,大家一樣美麗,但是你喜歡整容的還是天生基因的美麗呢?Go就是基因里面支持的并發,可以充分的利用多核,很容易的使用并發。
            • 內置runtime,支持垃圾回收,這屬于動態語言的特性之一吧,雖然目前來說GC不算完美,但是足以應付我們所能遇到的大多數情況,特別是Go1.1之后的GC。
            • 簡單易學,Go語言的作者都有C的基因,那么Go自然而然就有了C的基因,那么Go關鍵字是25個,但是表達能力很強大,幾乎支持大多數你在其他語言見過的特性:繼承、重載、對象等。
            • 豐富的標準庫,Go目前已經內置了大量的庫,特別是網絡庫非常強大,我最愛的也是這部分。
            • 內置強大的工具,Go語言里面內置了很多工具鏈,最好的應該是gofmt工具,自動化格式化代碼,能夠讓團隊review變得如此的簡單,代碼格式一模一樣,想不一樣都很困難。
            • 跨平臺編譯,如果你寫的Go代碼不包含cgo,那么就可以做到window系統編譯linux的應用,如何做到的呢?Go引用了plan9的代碼,這就是不依賴系統的信息。
            • 內嵌C支持,前面說了作者是C的作者,所以Go里面也可以直接包含c代碼,利用現有的豐富的C庫。
            2、Go適合用來做什么
            • 服務器編程,以前你如果使用C或者C++做的那些事情,用Go來做很合適,例如處理日志、數據打包、虛擬機處理、文件系統等。
            • 分布式系統,數據庫代理器等
            • 網絡編程,這一塊目前應用最廣,包括Web應用、API應用、下載應用、
            • 內存數據庫,前一段時間google開發的groupcache,couchbase的部分組建
            • 云平臺,目前國外很多云平臺在采用Go開發,CloudFoundy的部分組建,前VMare的技術總監自己出來搞的apcera云平臺。
            3、Go成功的項目
            nsq:bitly開源的消息隊列系統,性能非常高,目前他們每天處理數十億條的消息
            docker:基于lxc的一個虛擬打包工具,能夠實現PAAS平臺的組建。
            packer:用來生成不同平臺的鏡像文件,例如VM、vbox、AWS等,作者是vagrant的作者
            skynet:分布式調度框架
            Doozer:分布式同步工具,類似ZooKeeper
            Heka:mazila開源的日志處理系統
            cbfs:couchbase開源的分布式文件系統
            tsuru:開源的PAAS平臺,和SAE實現的功能一模一樣
            groupcache:memcahe作者寫的用于Google下載系統的緩存系統
            god:類似redis的緩存系統,但是支持分布式和擴展性
            gor:網絡流量抓包和重放工具
            以下是一些公司,只是一小部分:
            下面列出來了一些使用的用戶
            GoUsers - go-wiki - A list of organizations that use Go.
            4、Go還存在的缺點
            以下缺點是我自己在項目開發中遇到的一些問題:
            • Go的import包不支持版本,有時候升級容易導致項目不可運行,所以需要自己控制相應的版本信息
            • Go的goroutine一旦啟動之后,不同的goroutine之間切換不是受程序控制,runtime調度的時候,需要嚴謹的邏輯,不然goroutine休眠,過一段時間邏輯結束了,突然冒出來又執行了,會導致邏輯出錯等情況。
            • GC延遲有點大,我開發的日志系統傷過一次,同時并發很大的情況下,處理很大的日志,GC沒有那么快,內存回收不給力,后來經過profile程序改進之后得到了改善。
            • pkg下面的圖片處理庫很多bug,還是使用成熟產品好,調用這些成熟庫imagemagick的接口比較靠譜


            最后還是建議大家學習Go,這門語言真的值得大家好好學習,因為它可以做從底層到前端的任何工作。
            posted on 2016-09-05 11:56 思月行云 閱讀(608) 評論(0)  編輯 收藏 引用 所屬分類: Golang
            久久精品aⅴ无码中文字字幕不卡| 久久精品国产亚洲av日韩| 久久久久亚洲AV无码专区桃色| 一级做a爰片久久毛片16| 精品久久久久久久中文字幕| 7777久久久国产精品消防器材| 国产91久久综合| 九九99精品久久久久久| 青青草国产精品久久久久| 欧美一级久久久久久久大| 亚洲va中文字幕无码久久| 久久国产免费直播| 欧洲人妻丰满av无码久久不卡| 国产精品久久久99| 久久综合亚洲欧美成人| 热久久国产欧美一区二区精品| 国产成人久久精品激情| 一本色道久久99一综合| 欧美午夜A∨大片久久 | 久久久久久久尹人综合网亚洲| 欧美午夜A∨大片久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久久久久久久无码精品亚洲日韩| 国产99久久久国产精免费| 国产综合久久久久| 午夜天堂精品久久久久| 伊人久久大香线蕉综合5g| 久久综合九色欧美综合狠狠| 丁香久久婷婷国产午夜视频| 94久久国产乱子伦精品免费| 久久综合九色综合97_久久久| 久久中文骚妇内射| 久久精品中文騷妇女内射| 久久天天躁狠狠躁夜夜avapp| 久久精品国产免费观看| 97香蕉久久夜色精品国产| 久久毛片一区二区| 久久人人爽人人爽人人爽 | 亚洲日本久久久午夜精品| 性做久久久久久久久老女人| 亚洲v国产v天堂a无码久久|