iT邦幫忙

go相關文章
共有 255 則文章
鐵人賽 自我挑戰組 DAY 26
30天學會Golang 系列 第 26

技術 day26 - 同步

大家好,今天是鐵人賽第二十六天。通道可以讓多個goroutine的資料同步,不過go語言其實還有其他的同步機制,像是鎖定(lock)。所以今天就來講go語言還有...

鐵人賽 Software Development DAY 16

技術 第十六天:newproc1 之前的堆疊準備動作

前情提要 昨日開始了 newproc 函式,概念上應該是要準備一個新的 goroutine 準備執行?通常是用在 go statement 的生成,但是這裡是...

鐵人賽 Modern Web DAY 22
BeeGo 系列 第 22

技術 Tasks

Tasks 也是 toolbox 提供的一樣功能,主要是可以讓你寫定期執行的任務,像是定期刪除掉很久沒存取的檔案等等的。乍看之時,我本來以為是類似 Celery...

鐵人賽 自我挑戰組 DAY 16

技術 Day16 .[心得與討論篇] 走向interface去設計架構(3)- 思考interface的應用II

生硬的結構 如果外面的struct裡面是包struct,在宣告出來了時候,裡面的struct是定死的,變數就是指定要宣告時的struct型態。 如下所示 //...

鐵人賽 Software Development DAY 24

技術 Gin框架 檔案上傳 & 資料綁定和驗證

網頁或者是業務上總是會需要讓客戶上傳點檔案的. 像是大頭照、履歷檔:)、謎片:)、帳單PDF 以前Node我都是用Multer在處理這部份. 這次來寫看看Gin...

鐵人賽 自我挑戰組 DAY 25
30天學會Golang 系列 第 25

技術 day25 - 通道(續)

大家好,今天是鐵人賽第二十五天。昨天介紹了通道的基本用法,我覺得通道是一個很複雜的東西,用不好很容易 deadlock,而今天就繼續來講通道的其他特性。 有緩衝...

鐵人賽 Software Development DAY 15

技術 第十五天:追蹤 newproc

前情提要 昨日終於結束了 schedinit 部份,主要是追 gcinit 函式,還有從比較抽象的角度瀏覽了一些垃圾回收的機制。 退回一層 回到我們之前所在的...

鐵人賽 自我挑戰組 DAY 15

技術 Day15 .[心得與討論篇] 走向interface去設計架構(2)- 思考interface的應用I

這幾篇沒有打算從頭教學golang的interface怎麼使用,網路上的範例和資料隨處可見,多多參考不同的見解,就可以對interface有相當的認識,筆者就不...

鐵人賽 Modern Web DAY 21
BeeGo 系列 第 21

技術 Health check

Health check 是包在 toolbox 模組裡,開發小組說 toolbox 是借鏡 Dropwizard 所建立的。 Health check 主要是...

鐵人賽 Software Development DAY 23

技術 Gin框架搭配模板

在實務上, 也不會只有做WebApi專案. 也會有做WebServe的專案, 差別在那 ?? 最顯著的差別就是有沒有View. Gin有提供載入View並且把參...

鐵人賽 自我挑戰組 DAY 24
30天學會Golang 系列 第 24

技術 day24 - 通道

大家好,今天是鐵人賽第二十四天。Go語言的goroutine可以併發,提高程式運算效能,但還需要配合通道的使用,才能發揮最大的效益。 今天就來講go語言的通道,...

鐵人賽 自我挑戰組 DAY 14

技術 Day14 .[心得與討論篇] 走向interface去設計架構(1)-既有手段已經無法解決問題

前言 如果已經很熟悉interface的觀眾,建議可以略過這幾篇。 如果還在卡關在interface面前的朋友,或許看了這幾篇,能夠稍微獲得一些靈感,能夠有點幫...

鐵人賽 Modern Web DAY 20
BeeGo 系列 第 20

技術 Docker

今天我們來試著打包為 docker image 吧。 之前我們所安裝的 bee 工具,就可以幫我們產生 Dockerfile 。 bee dockerize...

鐵人賽 Software Development DAY 14

技術 第十四天:schedinit 告一段落

前情提要 原本打算昨日結束整個 schedinit 部份,但光是寫範例程式和追蹤其中的 P-M-G 關係就花了許多時間... schedinit ......

鐵人賽 Software Development DAY 22

技術 Gin框架 with httptest and testify的第一次接觸

來杯琴酒(Gin)+萊姆=琴蕾(Gimlet)吧(誤) Gin Gin是一個基於Golang實做的框架, 特色是簡單!!! 設計精巧好懂的router/mi...

鐵人賽 自我挑戰組 DAY 23
30天學會Golang 系列 第 23

技術 day23 - 併發

大家好,今天是鐵人賽第二十三天。今天來講go語言的併發,稱為goroutine。goroutine屬於多執行緒處理,用 go 關鍵字執行一個函式,就會建立一個新...

鐵人賽 Software Development DAY 13

技術 第十三天:更多除錯訊息

前情提要 昨日提到除錯選項的 allocfreetrace,但若要觀察 scheduler 行為,hw 範例還是太單薄了一些。 schedinit ......

鐵人賽 自我挑戰組 DAY 13

技術 Day13 .[心得與討論篇] 使用goroutine,如家常便飯

這篇開始,會比較偏向個人心得和見解,裡面若有些知識上的理解錯誤,也請各路朋友幫忙提醒一下,或與各位看倌的認知有出入實屬正常,歡迎交流想法。 part 1 gor...

鐵人賽 Modern Web DAY 19
BeeGo 系列 第 19

技術 Logging

今天來介紹 Logging,使用 Logging ,我們可以印出訊息,藉著這些訊息來進行除錯。 使用 在 import "github.com/ast...

鐵人賽 Software Development DAY 21

技術 Http Service淺談

現在幾乎什麼服務都是走Http協議, 提供WebAPI給client使用. NodeJS幾年前盛起, 一小部份原因也是他做WebAPI很好寫沒太多複雜的設定....

鐵人賽 自我挑戰組 DAY 22
30天學會Golang 系列 第 22

技術 day22 - 網路操作

大家好,今天是鐵人賽第二十二天。今天要來介紹go語言的網路操作方式,網路其實也是 io 的一種,最常見的就是 HTTP 協定。 HTTP Client go語言...

鐵人賽 Software Development DAY 12

技術 第十二天:簡單除錯 GO 語言程式

前情提要 schedinit 函式終於接近尾聲。昨日追蹤的是與 module、signal 相關的幾項初始化。 schedinit ... goargs(...

鐵人賽 自我挑戰組 DAY 12

技術 Day12 .[正確資料篇] 不要用time.time型態的資料insert到MySql Datetime欄位

這篇分享的內容,比較像是遇到bug,使用mysql DB,程式寫資料進入再撈出所遇到的問題。 mysql DB 在欄位設計要記錄時間相關的欄位,我們便設定為Da...

鐵人賽 Modern Web DAY 18
BeeGo 系列 第 18

技術 Multiple language

今天來介紹 Multiple language,BeeGo 主要是使用 ini 來做多國語言翻譯檔,並不是使用 gettext。 官方文件寫很長,是為了說明官方...

鐵人賽 Software Development DAY 20

技術 Testing初探

程式寫好了!! 來稍微測試自己的程式會不會跑. 但Go只有main包的main()才能執行阿!! 還是要寫另一個專案的程式來測試剛剛寫的程式呢? Go內建測試框...

鐵人賽 自我挑戰組 DAY 21
30天學會Golang 系列 第 21

技術 day21 - 檔案操作

大家好,今天是鐵人賽第二十一天。今天來介紹go語言的檔案操作方式。 ioutil 套件 ioutil 套件是最簡單的檔案操作方式,定義在 io/ioutil 目...

鐵人賽 Software Development DAY 11

技術 第十一天:繼續奮戰 schedinit

前情提要 昨日也追蹤了 schedinit 函式的幾個初始化部份。 schedinit ... 今天看完就可以過半了吧 ... alginit()...

鐵人賽 Modern Web DAY 17
BeeGo 系列 第 17

技術 訊息顯示

前面有使用塞變數的方法來顯示訊息,但這樣做,變成每個 Controller 都要寫重複的程式,有沒有類似 Django Message framework 的方...

鐵人賽 自我挑戰組 DAY 11

技術 Day11 .[正確資料篇] graceful shutdown & restart

說明 在php專案,如果遇到程式要修正,要重新發佈,那麼就直接把程式丟上去就好啦,因為是直譯式的語言,程式是執行到哪裡,才看哪裡。於是有更新的話,程式下次執行到...

鐵人賽 Software Development DAY 19

技術 database/sql Scan & Value, 讓操作sql有一點點ORM的感覺

Scanner & Valuer // package "database/sql" type Scanner interface...