Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。還記得《【2】Sublime配置GO開發環境》的入門例子嗎?當然不記得了:)聽這篇文章距離上篇時間太久遠了,遙遠的我都快忘記了。還是把貼上吧該例子中的func main()表示這是一個名稱叫main的方法,而package main表示這個方法在main包內,這兩部分的內容就是本節要分享的知識。這麼簡單?是的,簡單而不簡約,呵呵,接著往下看!聽 聽 聽 聽
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 形式含義聽 聽 所謂閉包就是一個函數“捕獲”了和它在同一作用於的其他常量和變數。聽 聽 從形式上看,在Golang中,所有的匿名函數都是閉包。閉包的建立方式和普通函數幾乎一致,只有一個關鍵區別:閉包沒有名字。聽 聽
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Golang是Google開發的一種編譯型,平行化,具有記憶體回收功能的編譯語言,還和C一樣有指標。Golang是天生的網路程式設計語言,學習使用Golang先從環境配置開始。環境要求:Homerbrew
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Tiny Go Web (TGW)是一個非常簡單的Web架構,甚至談不上架構。TGW無意取代任何架構,TGW的誕生是因為作者在使用beego時有種挫敗感,決定自己重新寫一個適合自己網站用的(私人借書網,因為網站沒有完成備案,暫時由託管在US的vps進行反向
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。剛入手golang,大概弄清楚了method在go裡的概念。以下大部分為搬運過程重寫代碼。method可以為一個type添加(聲明)一個方法,例如:type Cat struct {}func (c Cat) Hwo() {
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Dog-compAbstract文章介紹一個編譯器的實現流程。源語言選用MiniJava. MiniJava是一個物件導向語言,支援繼承,對象建立等物件導向的特性。具體文法參考Tiger book
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Replica Sets搭建伺服器採用Replica Sets搭建,可參考Deploy a Replica Set讀模式Mongod的讀模式共有五種:primary. 在主節點上進行所有的讀操作primaryPreferred.
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。不用管理 grouting 和 channel 了。 以下為轉寄 golangtc.com 原文:剛剛寫了個包,覺得值得出來分享下:文檔: https://github.com/sunfmin/fanout用來簡化並發程式(goroutine, channel)的編寫,這個包直接改寫自Go Concurrency Patterns:
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。使用 Etcd 和 Haproxy 做 Docker 服務發現標籤(空格分隔): Etcd Haproxy Docker 服務發現 architecture discovery docker-gen golang service 本文作者是 jwilder,本文的原文是 Docker Service Discovery Using Etcd and Haproxy在前一篇文章中,我們展示了一種為 Docker
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。slice,是go中一個很重要的主題。我們不用切片來表述,因為這裡的切片特指的是數組的切片。先給slice下個定義吧: Slice expressions construct a substring or slice from a string, array, pointer to array, or slice. There are two variants: a simple form that specifies a
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。學習什麼語言都得從讀檔案開始,好像記得一個大神說過電腦編程就是"開啟檔案,操作,關閉檔案"。初學Golang就記一下go語言的檔案操作Read Filefunc main(){ rw,err := os.Open("") if err != nil { panic(err) } defer rw.Close()
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。標籤(空格分隔): Go Memory Profiler 效能調試 效能分析 註:該文作者是 Dmitry Vyukov,原文地址 Debugging performance issues in Go programs 這個是原文中的 Memory Profiler 段落記憶體分析器顯示了函數分配堆記憶體的情況。你可以以 CPU profile 相似的方式收集:使用 go test --memprofile,通過 http:
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。快速排序的原理就不介紹了。在網上看到一個有趣的視頻,大家可以看看,非常詳細且有趣。快速排序視頻代碼:https://play.golang.org/p/Fw5gtzrPj0package mainimport ( "fmt")func main() { var sortArray = []int{3, 41, 24, 76, 11, 45, 3, 3, 64, 21, 69, 19, 36}
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 註:本文作者是 YANN,原文是 Introduction to Go Debugging with GDB在過去的 4 年中,我花了我絕大部分的時間用來寫,讀以及調試 Python 或 JavaScript 代碼。在學習 Go 的過程中,像穿著一雙有小石子的鞋子在美麗的山中遠行。很多事情給我留下了深刻的印象,但是使用 println 調試My Code在過去走的太遠了。在 Python
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 註:該文作者是 Katrina Owen,原文地址是 iota: Elegant Constants in Golang有些概念有名字,並且有時候我們關注這些名字,甚至(特別)是在我們代碼中。const ( CCVisa = "Visa" CCMasterCard = "MasterCard" CCAmericanExpress =
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。把Go程式變小的辦法是:go build -ldflags "-s -w"相關解釋:-s去掉符號表,panic時候的stack trace就沒有任何檔案名稱/行號資訊了,這個等價於普通C/C++程式被strip的效果,-w去掉DWARF調試資訊,得到的程式就不能用gdb調試了。 -s和-w也可以分開使用.原文:http://sudochina.com/insion/blog/179/
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。我們公司服務端都是在用Golang,每天幾百萬的UV,過億的PV一直沒啥問題。後來改了一次邏輯,首頁能展示一個列表,之前這個列表都沒有做過緩衝處理,一個是因為資料少,一共才一千多條;還有就是量不大。但是首頁加了入口之後出了問題,記憶體瘋漲,一般記憶體也就佔200M+,這還是包含In
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在寫網路程式的時候,我們經常需要將結構體或者整數等資料類型序列化成二進位的buffer串。或者從一個buffer中解析出來一個結構體出來,最典型的就是在協議的header部分表徵head length 或者body
Time of Update: 2017-02-09
這是一個建立於