iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Modern Web

從0開始的golang web server 系列

說明如何以golang語言從無到有建立一個web server

DAY 11

Day11-http參數

使用者呼叫api時,會依照該api的功能,帶上不同的參數進來,但是這些參數不像go的函數互相呼叫那樣簡單獲得。 func getSum(x, y int) (i...

2020-09-19 ‧ 由 jim_chung 分享
DAY 12

Day12-json以及jsonparser

什麼是json 前一章有稍微提到json,那麼json是什麼呢?JavaScript物件表示法(JavaScript Object Notation)簡稱jso...

2020-09-20 ‧ 由 jim_chung 分享
DAY 13

Day13-回應

當使用者呼叫完api,就會得到回應,而回應內容則必須寫入到http.ResponseWriter內,這邊就來介紹能夠帶入response內的東西。 Text 最...

2020-09-21 ‧ 由 jim_chung 分享
DAY 14

Day14-錯誤回應

在處理請求的時候,並非每次都能正確處理完請求,有可能因為某些原因連不到資料庫,或是程式寫錯導致出現bug,更或者是使用者帶進來的參數錯誤,導致處理上出現錯誤,在...

2020-09-22 ‧ 由 jim_chung 分享
DAY 15

Day15-資料庫

對於web-server來說,基本上都是建構在對於資料的取得 寫入和刪除當中,配合各種商業邏輯,來達成客戶的需求,那麼我們應該要選擇哪個資料庫來使用呢? MyS...

2020-09-23 ‧ 由 jim_chung 分享
DAY 16

Day16-MySQL

在go使用mysql,除了go本身的套件外,github上也有許多MySQL套件可以選擇,這邊挑其中一個套件來介紹。 go-sql-driver/mysql 這...

2020-09-24 ‧ 由 jim_chung 分享
DAY 17

Day17-Scylla

如果你有著需要大量存取,或是存取byte之類的需求,還是有著避免單點故障 追求一致性,那麼選擇Scylla就對了,而在go內使用Scylla,就必須要知道如何使...

2020-09-25 ‧ 由 jim_chung 分享
DAY 18

Day18-Redis

當你需要快取,或是只需要簡單的key-value儲存資料時,redis會是你的好選擇,而要在go內使用redis,可以透過redigo套件。 建立連線池 poo...

2020-09-26 ‧ 由 jim_chung 分享
DAY 19

Day19-平行處理 goroutine

當收到使用者請求時,程式會依呼叫的api進行不同操作,如果沒特別設計的話,通常會以線性的方式處理,但是中間處理流程如果拖長,使用者收到回應的速度也會變慢,如果慢...

2020-09-27 ‧ 由 jim_chung 分享
DAY 20

Day20-平行處理 channel

在上一章我們提到的goroutine,在使用go指令後會額外開一個線程去處理,不過因為該線程處理完後就會自行關閉,假如有需要回收的變數或結果,會比較麻煩,一個方...

2020-09-28 ‧ 由 jim_chung 分享