Time of Update: 2017-02-07
標籤:有助於 機制 log nbsp include ram details void port 我寫了一個 go interface 相關的代碼轉換為 C 代碼的範例。也許有助於大家理解
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。譯註: 這篇文章的內容非常基礎,也非常容易理解。原文地址,感覺是最能清晰的講述了net/http包的用法的一篇,故翻譯一下共用之。一切的基礎:ServeMux 和 HandlerGo 語言中處理 HTTP 要求主要跟兩個東西相關:ServeMux 和 Handler。ServrMux 本質上是一個 HTTP 要求路由器(或者叫多工器,Multiplexor)。它把收到的請求與一組預先定義的 URL
Time of Update: 2017-02-08
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。依照我的前一篇文章(超全的Go Http路由架構效能比較)對各種Go http路由架構的比較, Iris明顯勝出,它的效能遠遠超過其它Golang http路由架構。但是,在真實的環境中,Iris真的就是最快的Golang http路由架構嗎?2016-04-05 更新: 我已經提交了一個Bug,
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。之前一直在用qiniu的儲存服務,產生圖片的縮圖,模糊圖,視頻的webp,現在需要把儲存移到s3上,那麼這些圖片,視頻處理就要自己動手寫了,本文梳理一下大致的思路。分析需求先看一下qiniu的介面是如何處理圖片的,例如先截取視頻第一秒的圖片,再把圖片縮減,最後儲存到一個新的key,命令可以這麼寫 vframe/jpg/offset/1|imageMogr2/thumbnail/400x|saveas/xxx,
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。實際情況預設情況下,mongo使用_id自動產生uniq id,而且在mongo內建的命令裡,無法指定一個自增欄位。自增欄位在多線程時必須是原子性的,這在大資料情況下很難實現伸縮性(scalability)。Generally in MongoDB, you would not use an auto-increment pattern forthe _id field, or any field, because it
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。confdGithub: https://github.com/sumory/confdconfd是一個統一組態管理工具,目前仍在開發中,基於本地檔案儲存體的部署方式已經可以用於生產環境中。你可以用它:統一管理各種設定檔,設定檔範本和資料是分離的,可各自單獨管理動態修改配置屬性,然後重建相關的設定檔提供cli方式修改資料Features[x] 基礎解析:設定檔使用toml格式,模板資料分離[x] 多種儲存支援:local
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。golang錯誤處理方式一直是很多人詬病的地方,很多人都吐槽說一半的代碼是 if err != nil { /* 錯誤處理 */ },嚴重影響正常的處理邏輯,我最開啟也反感這種錯誤處理機制,每調用完一個函數都需要check一下,自訂函數也都要增加一個error類型的傳回值,但是查了很多資料慢慢理解這種錯誤機制的好處。因為調用每一個函數都可能發生錯誤,及時在錯誤發生的地方做處理更容易構建複雜的大型系統。##
Time of Update: 2017-02-10
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。一、知名的Golang開源架構1. Beego: 一個國產的HTTP架構,我們可以用它快速開發各種應用程式。官網地址: http://beego.me2. Gogs: 一個國產的自主Git託管服務程式,我們可以用它來搭建自己的Git伺服器。官網地址:http://gogits.org3. Docker:
Time of Update: 2017-02-10
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。變數變數聲明通過關鍵字var聲明變數,資料類型在變數名後。var a intvar b int = 10變數聲明語句可以不需要使用分號作為結束符。可以將若干個需要聲明的變數放置在一起,避免重複寫var關鍵字。var ( a int b string)初始設定變數初始設定變數時可以不用聲明資料類型,go編譯器會根據運算式右值推匯出該聲明為哪種類型。var a int = 10var a = 10可以使用 :=
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。本文主要介紹一下 Docker 基礎的東西,先介紹一下我的實現環境:1. windows 10 正式版1. Docker Toolbox1. Docker version 1.8.21. 官方鏡像 ubuntu:latest這裡我們主要只說 aufs/containers/graph 這三個目錄。1. 先進入 Docker 檔案系統目錄ll /var/lib/docker #其中目錄是這樣的 /var/lib/docker
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。看到了七牛官網上很多問list這個API如何用?或者說人們看不懂,我用簡單的例子或者demo來簡單的給大家看看這個如何用!一個php版本一個golang的簡單demo!golang版本package mainimport ( "crypto/hmac" "crypto/sha1" "encoding/base64" "fmt" "
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。今天我們繼續講golang的io的標準庫[1]type PipeReader[php]type PipeReader struct { // contains filtered or unexported fields}[/php](1)func Pipe() (*PipeReader,
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。聽 聽 Golang有個很酷的特性可以跨平台編譯產生該平台的二進位可執行檔,雖然python也能通過其他工具產生相應平台的二進位檔案,但是還是覺得太彆扭了,通過golang寫一次,然後產生相應平台的二進位檔案而且沒有依賴,多酷的事情。聽 聽 這個ss帳號擷取指令碼幹啥滴?聽 聽 參考:http://youerning.blog.51cto.com/10513771/1852876 聽 聽
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。一、迴圈語句聽 聽 迴圈語句即for語句,您可能說:“不對,它不僅僅是for語句,還有while或者do-while”,真的很遺憾,GO語言真的只有for,它認為提供一種就可以了,提供多了怕給程式員帶來麻煩 :)下面我們使用for迴圈計算1+2+3+4+……+100的和,和其它語言一樣,我們使用迴圈100次的辦法:定義一個變數,讓它從1開始迴圈100次,每次都判斷它是否小於101,若是變數就加1代碼如下://
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。本文整理自知乎,原文作者 @林建入。不是為了與眾不同。而是為了更加清晰易懂。Rob Pike 曾經在 Go 官方部落格解釋過這個問題(原文地址:http://blog.golang.org/gos-declaration-syntax),簡略翻譯如下(水平有限翻譯的不對的地方見諒):引言Go語言新人常常會很疑惑為什麼這門語言的聲明文法(declaration
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Thrift的序列化是比Json更好用的結構(具體哪裡好了我還沒研究)。但是它有一個非常嚴重的問題:相容性差。常年使用Json的我們已經被慣壞了,潛意識裡就覺得資料預設是能保持相容的。先說一下那個線上問題。我與公司其它部門用Thrift對接,先上了一版,我是調用方。接著,二次升級的時候,合作的部門改了一下Idl,在函數返回結果結構體的最前面,插入了一個結構,是一個結構體,原本第一版第一個位置是整形。然後他們上線了,我還在排隊上線。
Time of Update: 2017-02-09
這是一個建立於
Time of Update: 2017-02-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。//隊列的鏈式儲存結構的實現//隊列鏈式儲存結構體type LSQueue struct { front *LSQNode //頭指標 rear *LSQNode //尾指標 count int //隊列的線性長度}//隊列鏈式儲存結構節點type LSQNode struct { elem ElemType //儲存的資料 next *LSQNode