Soft_Job 板


LINE

小弟目前在公司負責架構設計及技術導入 由於產品是廣告投放平台 能不能在短時間內快速響應使用者請求是很關鍵的因素 先前產品是由 Scala + Nodejs 所開發 後續選擇 Go 重新開發的原因主要會從幾個面向下去思考 1. 效能 Go 的 benchmark 有很多人做過就不多提 但關鍵的一點是你不必到「非常精通」就能寫出效能還不錯的程式 先前看到文章是底層在運作時 會幫你處理掉許多複雜的東西: goroutine、inlining 等等 建議參考由 Dave Cheney 寫的文章 https://dave.cheney.net/2014/06/07/five-things-that-make-go-fast 該位作者針對 Golang 撰寫許多相當深入的文章 值得參考 2. 上手難度、維護性 Golang 很無聊,保留字很少 不像其他語言有許多 syntax sugar 帶來效益是新手也能夠很快的上手 不會出現新手跟老手程式風格差異很多、效能落差等問題 針對團隊 (不見得是大型,有兩三人共同開發時也算) 由於他實在太無聊,語言層面能玩的花樣很少 (除了 design pattern 要學習以外) 導致每個人開發風格極度類似 是好是壞見仁見智 但團隊要快速開發及方便維護上絕對有其好處 -- 以下是小弟在 iTHome Gopherday 演講的投影片,可以參考看看 https://tachingchen.com/tw/blog/From-NodeJs-Scala-to-Go/ 裡面有包含在不同產品生命週期選擇不同語言的原因 -- 另外,goroutine 算是 Golang 內很重要的東西 goroutine 相對 thread 又更輕量化一點 之間切換執行的代價很低、撰寫上也非常方便 go dummyFunction() function 前面加上 go 就能異步執行,相當方便 但它並非開免錢的、開不用怕的 Golang GPM 調度模型 是將 G map 到對應的 P 上,然後 P 再對應到 M 上 http://tonybai.com/2017/06/23/an-intro-about-goroutine-scheduler/ 因為有大量的 G 被開起來時一定會有等待時間 直到他被放到 P 上然後開始執行 在開啟大量 goroutine 時是有可能產生 bug 的 請參考投影片第13頁 -- 最後小小建議 雖然 Golang 近幾年有流行趨勢(大陸用蠻兇的) 不過與其執著於語言是否能賺錢、流行 關注為什麼語言這樣設計、什麼場景該應用何種語言 這些背後的思考過程及結論 可能會替職涯發展帶來更多的效益 :) --
QR Code



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.32.131
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1502524097.A.EC8.html
1F:→ dreamnook: 還蠻想在golang/nodejs應用環境工作QQ 08/12 15:54
2F:推 kkk003: 推 08/12 17:49
3F:推 nurockplayer: 推 08/12 22:25
4F:推 chiel: 推大大慶 08/12 23:30
5F:推 ripple0129: 風格相似是優點,降低新進人員的訓練成本 08/12 23:57
6F:→ life1347: 個人也喜歡風格相近,但有人認為寫起來不像其他語言順手 08/13 00:00
7F:→ life1347: 為獲取工程面效益,只能說是權衡後的結果 XD 08/13 00:01
8F:推 ian90911: 推 08/13 15:51
9F:推 Clain66: golang 的 package management 目前還是很不方便呀 08/13 23:05
10F:→ life1347: 敝公司使用 glide 管理,也正在等官方的 godep 出現 08/13 23:10
11F:推 Daidouji: 太強ler8 崇拜你的小粉絲 08/14 22:45
12F:推 shedoh: 推強者大慶 08/16 15:43
13F:推 chrome: 推 08/16 15:48
14F:推 kkdai: Dave Cheney 九月要來台灣喔 08/21 15:32
15F:推 nochoice: 推推有幸聽到原po現場演講 08/21 19:16







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP