Time of Update: 2017-10-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 訊息佇列由生產者和消費者共同協作,生產者產生訊息放入隊列中,消費者從隊列中取出訊息。 1.消費者type Producer struct { id int64 addr string conn producerConn config Config logger logger logLvl LogLevel logGuard sync.RWMutex
Time of Update: 2017-09-19
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 如何使用hugo搭建個人部落格(一) 如何使用hugo搭建個人部落格? 按照建立步驟有: 1. 在win7上使用hugo,能夠本地預覽(就是本文了) 2. 修改主題:顏色,字型,布局(後續) 3.
Time of Update: 2017-09-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 前提:實現一個http路由必須要瞭解net/http包,主要是go/src/net/http/server.go檔案 go實現一個web路由主要做三件事: 監聽連接埠 接收用戶端的請求 為每個請求分配對應的handler(對應到php中就是將請求轉寄到相應的controller和action) 下面是一個簡單的實現路由的邏輯 package mainimport ( "
Time of Update: 2017-09-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ( "log" "net/http" "os" "github.com/jander/golog/logger" "github.com/kardianos/service")type program struct{}func (p *program) Start(s service.
Time of Update: 2017-10-07
這是一個建立於
Time of Update: 2017-09-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1、導讀記得上大學時上過《電腦網路基礎》專門課,當時真是單純善良無知,覺得我以後又不搞網路這一塊的東西,沒必要好好學習電腦網路這們課程,只要考試通過就行了。但是工作後的我發現,不管是我們是不是做軟體開發,都會多多少少接觸接觸到電腦網路,因為電腦網路無處不在。平時生活中我們要接觸到路由器,交換器,dns,ping,修改dns等等這些基本的操作,作為軟體開發人員,我們要接觸到tcp、udp、http、tcp串連三向交握,斷開四次揮手、
Time of Update: 2017-10-11
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 GoLang基礎資料類型-slice(切片) 作者:尹正傑著作權聲明:原創作品,謝絕轉載!否則將追究法律責任。 數組的長度在定義之後無法再次修改;數組是實值型別,每次傳遞都將產生一份副本。顯然這種資料結構無法完全滿足開發人員的真實需求。在初始定義數組時,我們並不知道需要多大的數組,因此我們就需要“
Time of Update: 2017-10-10
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。參照的是https://github.com/caibirdme/hand-to-hand-optimize-go 這個文章寫一段代碼測試首先自己寫一段demo裡面負責2件事doSomeThingOnegenSomeBytes運行這個程式go run main.go安裝wrkTo install thewrk,you need only:git clonehttps://github.com/wg/wrk.gitcd
Time of Update: 2017-09-14
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。更多精彩文章:https://deepzz.comDesc:Go sync 包的使用方法,sync.Mutex,sync.RMutex,sync.Once,sync.Cond,sync.Waitgroup儘管 Golang 推薦通過 channel 進行通訊和同步,但在實際開發中 sync 包用得也非常的多。另外 sync 下還有一個 atomic
Time of Update: 2017-09-07
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。目前,當Go需要和C/C++代碼整合的時候,大家最先想到的肯定是CGO。畢竟是官方的解決方案,而且簡單。
Time of Update: 2017-09-06
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。網上關於golang操作hive的文章很少, 最近在用, 研究的過程中記一點程式碼片段.package my_hive_cliimport ("..../hive/tcliservice""git.apache.org/thrift.git/lib/go/thrift")func NewClient(host string, username string, password string,
Time of Update: 2017-09-30
這是一個建立於
Time of Update: 2017-09-21
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。今天在看一個開源項目的時候,發現作者使用一個ssdb的資料庫,第一反應是ssd硬碟,當時很詫異。後面瞭解後才知道,原來是 nosql資料庫。ssdb介紹一個高效能的支援豐富資料結構的 NoSQL 資料庫, 用於替代 Redis.SSDB 是一個 C/C++ 語言開發的高效能 NoSQL 資料庫, 支援 KV, list, map(hash), zset(sorted set) 等資料結構, 用來替代或者與 Redis
Time of Update: 2017-09-29
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。//假設有9個節點,圖在代碼下方,可以參考shortTablePath存放著V0到Vx某節點的最短路徑該演算法,第一次先將V0的節點串連的權值存入shortTablePath,沒串連的,用MAXWEIGHT表示.package mainimport ("fmt")const MAXVEX int = 9const MAXWEIGHT int = 1000var shortTablePath =
Time of Update: 2017-09-20
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1)簡介gRPCServer Load Balancer的主要實現機制是外部Server Load Balancer,即通過外部負載平衡器來向用戶端提供更新後的伺服器列表。gRPC用戶端也內建對少量幾種Server Load Balancer策略API的支援,其中包括grpclb策略(該策略實現了外部Server Load Balancer),但並不鼓勵使用者在gRPC中添加更多的策略。新的Server Load
Time of Update: 2017-09-09
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。作業系統: CentOS 6.9_x64 go語言版本: 1.8.3 問題描述 golang的log模組提供的有寫日誌功能,範例程式碼如下: /* golang log example E-Mail : Mike_Zhang@live.com */ package main import ( "log" "os" ) func main() { logFile,err :=
Time of Update: 2017-09-19
這是一個建立於
Time of Update: 2017-09-02
這是一個建立於
Time of Update: 2017-08-22
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。從這篇文章開始想寫寫leveldb的小知識。先瞭解manifest檔案,因為這個檔案關係到執行個體的讀取。至於這個檔案的內部結構以及如何來的,等會再聊。if instances[Name], err = leveldb.OpenFile(Dir, instance); err != nil { return errors.New(fmt.Sprintf(`leveldbs: err while open %s : %
Time of Update: 2017-08-26
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。QUIC,簡單來說,就是使用UDP的傳輸協議,根據Google自己的報告,速度可以加快30%。主要優點有:1. 快速建立連結(不用3次握手和TLS4次握手)2. 多工3. 改進的流控4. 快速SSL/TLS握手5. 適合移動使用者訪問這麼好的效能,當然要趕緊用Go試試看。https://github.com/lucas-clemente/quic-go樣本中的代碼也很簡單。http.Handle("/",