原创 Go net/PRC源碼閱讀server.go

Server端 本篇文章主要是在Go net/rpc 的server.go包進行翻譯,並添加註釋之後會對client以及server進行總結,廢話不多說 直接貼代碼了。有不正確的地方還請多多指正。 package rpc import

原创 Go 文件讀寫

看了下go語言的標準庫,最開始看了下io庫想着看看go語言提供的函數如何實現文件的讀寫,粗略的看了下就想着使用go語言提供的方法讀寫文件試下吧。 讀文件,示例: package main import ( "fmt" "

原创 golang interface理解

最早對interface的認知比較片面,很多人都說interface與channel是go語言的靈魂。然而在工作中使用的機會比較少,發現自己對interface的理解太片面。下面就記錄並總結下go中的interface。 interfac

原创 Dockerfile使用

基本結構 Dockerfile由一行行命令語句組成,並且支持以‘#’開頭的註釋行。 Dockerfile的指令是忽略大小寫的,建議使用大寫,每一行只支持一條指令,每條指令可以攜帶多個參數。 Dockerfile的指令根據作用可以分爲兩

原创 Go語言-併發

併發的含義 併發:邏輯上具備同時處理多個任務的能力 並行:物理上在同意時刻執行多個併發任務 多線程或多進程是並行的基本條件,但是單線程也可用協程做到併發。儘管協程在單個線程上通過主動切換來實現多任務併發。通常情況下,用多進程來實現分佈

原创 golang Glide 包管理windows下使用

安裝 安裝這裏就不詳細的介紹了,我是參考瞭如下兩篇文檔 https://segmentfault.com/a/1190000005929355 http://studygolang.com/articles/7129 這裏需要說明的

原创 OpenShift 常用命令

前言:本篇博客,爲自己的記錄。 1. 登錄:oc login 2. 創建一個新項目:oc new-project ProjectName 創建一個項目(ProjectName新建的項目名) 3. 查看當前項目下的pod: oc ge

原创 Go net/PRC源碼閱讀client.go

Client端 本篇文章主要是在go net/rpc 的client.go包進行翻譯,並添加註釋之後會對client以及server進行總結,廢話不多說 直接貼代碼了。有不正確的地方還請多多指正。 package rpc import

原创 Go 1.9 之後的sync包

sync.Map go 1.9之後加入了線程安全的map,sync.Map。 源碼中的註釋爲我們說明了sync.Map,是一個併發的map,恆定時間調用loads、stores、deletes。同時被多個goroutines調用是安全的

原创 golang使用gRPC創建雙向流模式

gRPC庫介紹 gRPC是一個高性能、通用的開源RPC框架,其由Google主要面向移動應用開發並基於HTTP/2協議標準而設計,基於ProtoBuf(Protocol Buffers)序列化協議開發,且支持衆多開發語言。 gRPC提供了

原创 apache ab壓測與參數傳遞

前言 入職了新公司配置了mac辦公,當要進行測試時同事說到用ab測試,當時的我一臉懵逼ab是個啥?當他爲我解釋完ab是個啥的時候,我想那就動手裝一個吧,結果人家說mac下已經裝好了,再一次被打臉…. 下面我們進入正題,再網上搜了很多資料

原创 Go語言-接口

接口(interface)的定義 接口代表一種調用契約,是多個方法聲明的集合。接口要實現的是做什麼,而不關心如何做。接口最常見的使用場景是對包外提供訪問,或預留擴展空間。 Go語言接口實現機制很簡潔,只要目標類型方法集內包含接口聲明的全