今天我們繼續來看Melody,hub,Session三個業務主體,它們struct當中值得關心的部分。 用前三篇的分析,可以充分了解到,Melody,hub,S...
好囉,倒數第二天,來做後台。今天主要會完成後台文章的管理,會有 List, Create, Update, Delete 等,另外也會試著使用 FCKEdito...
重新思考物件之間的關係 我們先稍稍拉遠,談談關於物件關係的設計,假設今天有個資料結構的題目是這樣: 有一位老師,老師有許多學生。 以前的我會如下面這樣寫: //...
前言 今天我們繼續看幾個跟Zookeeper有關的實作,主要是因為這是那時的作業,使用Golang,我覺得蠻好玩的。 Leader Election 許多分散式...
前情提要 之前取得的 newg 狀態已經調整為可執行,而且也已經分配好 ID 了。 newproc1 的尾巴 if raceenabled {...
今天來處理這幾個部份 前台的呈現 首頁,呈現最新的 10 篇文章,需要有分頁 單篇文章 首頁 我們把原來的首頁替換掉,改為呈現最新的 10 篇文章,並...
前情提要 昨日看到 gostartcallfn 函式眼睛一亮,但終究只是設定一些 context,runtime 還未結束,仍需繼續 trace。 接下去呢?...
承上一篇,我們從melody.Session 開始做研究。 step1 . 找出業務主體的struct 首先找到它的位置。 // Session wrapper...
往往需求派下來了,我們把程式寫完了, 或者Dockerfile(or docker-compose)寫好了.總要推上版控的, 應該大部分都是Git吧!!去年開...
剩下四天,讓我們開始寫簡單的 blog 吧。 我們延續之前的程式,Member 這個 model 就當作文章的作者,基本上,只增加這幾個部份 文章 (Post...
前情提要 昨日我們終於確定取得一個新的 G 物件,並且初次見識到 G 的狀態轉移。 快轉一點點 由於接下來的部份有些雜亂,筆者還是跳過了一些部份,大致交待如下...
接下來筆者的系列文,會一連串圍繞在struct的設計分析上,接下來的內容都是自己的感想,並非有所謂的正確答案。 初步解完了interface之後,我們來繼續試圖...
Go的交叉編譯 交叉編譯就是指在自己的OS上, 編譯出另一個OS可以執行的程式.現在執行環境不外乎就是三類Windows、Linux、Mac 在Windows上...
大家好,今天是鐵人賽最後一天了,總覺得這一個月過得特別漫長,有幾天因為比較忙碌,就寫得比較短,之後我會找時間補上去。 最後一天再來講Go語言的測試工具,昨天介紹...
偶爾會看到鏈式寫法,但實際上自己寫package的時候,還不曾這樣玩過,這篇講解所謂的鏈式寫法,以及拿decimal package稍微做分析範例。 說明 在...
前情提要 昨日我們走過 newproc1 函式的最開頭部份;順利的情況下,能夠取得一個新的 G。 使用 gdb 驗證 我們將斷點設在 runtime.newp...
LDFLAGS Go可以在編譯時期透過LDFLAGS來給程式中的變數賦值.例如 編譯時給GIT版本訊息、給版號、給某種secretKey,或者是正式環境的sql...
大家好,今天是鐵人賽第二十九天。終於快結束啦,倒數一天就來談談單元測試吧。 我雖然是資訊相關科系畢業,但是學校沒有教寫單元測試,上一間公司也不寫單元測試,因為上...
前情提要 昨日我們都在爬梳註解與其他資料,企圖從比較鳥瞰的角度去觀察排程器與 GO 的系統模型。 acquirem 和 releasem(在 runtime/...
前幾篇我們介紹過怎麼打包成 Docker image,但是今天看了一下,發現 image 大小居然超過 500 MB,明明檔案不大,可是 image 大小卻這麼...
interface的介紹會在這篇先告個段落,因為一個精美的golang底層source code,主體和主體的介接和設計,不是光用interface就能一口氣解...
API文件 每位後端RD, 在寫WebAPI時,一定覺得寫扣還要維護API文件, 是件很繁瑣但又重要的工作. 不寫, 前端或者串接的人照三餐來問.寫, 又很花...
大家好,今天是鐵人賽第二十八天。今天繼續講反射。 反射值 反射除了可以獲取變數的型別資訊外,也可以獲取變數內部的值。 反射值的方式有兩種: 先取出空介面,再用...
前情提要 昨日我們簡單路過 systemstack 函式之後開始了 newproc1 函式。 暫停回顧 P-M-G 關係 雖然在第 10 天時有簡單介紹註解中...
回顧 筆者直到到半年前為止,開發的內容幾乎是圍繞在平台的部分,後來才踏入遊戲這塊。 平台與遊戲著重的業務處理,明顯有不同的重心,因為平台的業務處理重點在於資料,...
gRPC vs HTTP API 來源 gRPC gRPC是Google基於HTTP/2跟Protobuf所設計出來的RPC(Remote Prcedur...
大家好,今天是鐵人賽第二十七天,我們來談談Go語言的反射。雖然說使用反射會降低效能,但也要是很大量或頻繁的使用才會有感。如果要製作一個靈活的套件或是底層模組,反...