iT邦幫忙

go相關文章
共有 378 則文章
鐵人賽 DevOps DAY 22
應該是 Profilling 吧? 系列 第 22

技術 D22 看見 GC

繼昨天淺談 Go 的垃圾回收機制之後,今天我們將透過實際的範例來深入探討如何使用 Profiler 來觀察並分析 Go 程式在執行期間的垃圾回收行為。這將幫助我...

鐵人賽 DevOps DAY 21
應該是 Profilling 吧? 系列 第 21

技術 D21 淺談 Go GC 機制

GC 機制幾乎常見的語言都有的機制,只有鮮少的程式語言需自己的規範來撰寫程式碼搭配立刻回收(例如 Rust)。因為 OpenTelemetry Collecto...

鐵人賽 DevOps DAY 20
應該是 Profilling 吧? 系列 第 20

技術 D20 淺談回饋導向優化 PGO

在現代軟體開發的過程中,性能優化往往不僅僅是減少程式的執行時間。更關鍵的是,如何最大限度地提高系統資源的利用效率,從而能夠在同一時間處理更多的工作負載,或是服務...

鐵人賽 DevOps DAY 19
應該是 Profilling 吧? 系列 第 19

技術 D19 讓系統數據看得見(可觀測性驅動開發 ODD)

在現今的軟體開發中,性能優化不再僅僅依賴開發者的直覺或經驗,而是通過數據的收集和分析來指導優化方向。在昨天的文章中,我們探討了如何通過 Go Trace 工具來...

鐵人賽 DevOps DAY 18
應該是 Profilling 吧? 系列 第 18

技術 D18 Go Tool Trace - 4 從 分析到實戰:最佳化 Goroutine 數量

在昨天的文章中,我們深入探討了如何利用 Go Tool Trace 來分析程式的性能瓶頸,特別是 Goroutine 的調度與資源競爭問題。我們發現過多的 Go...

鐵人賽 DevOps DAY 17
應該是 Profilling 吧? 系列 第 17

技術 D17 淺談 Go Tool Trace - 3 實際分析 Goroutine Analysis

昨天我們簡單理解了有關 runtime/trace 的 User-defined tasks 和 User-defined regions。 今天,我們將進一步...

鐵人賽 DevOps DAY 16
應該是 Profilling 吧? 系列 第 16

技術 D16 淺談 Go Tool Trace - 2 Go Trace 與使用者自訂追蹤分析

在昨天的文章中,我們深入探討了 I/O 密集型任務如何影響 CPU 的上下文切換,並運用 vmstat 和 pidstat 等觀測工具分析了高併發情境下的資源使...

鐵人賽 DevOps DAY 15
應該是 Profilling 吧? 系列 第 15

技術 D15 淺談 Go Tool Trace - 1

在昨天的文章中,我們探討了 I/O 密集型任務與 CPU 上下文切換的關係,並利用觀測工具 vmstat 和 pidstat 分析了系統在高併發情況下的資源使用...

鐵人賽 DevOps DAY 13
應該是 Profilling 吧? 系列 第 13

技術 D13 閒聊I/O密集型任務與 Context Switch

突然今天想寫這篇是因為 Line 社群有網友問到 I/O密集型任務 如果開大量 Thread 或是將這個任務以容器啟動了數十個容器在消費從 Message Qu...

鐵人賽 DevOps DAY 4
應該是 Profilling 吧? 系列 第 4

技術 D4 系統性能工程充滿著挑戰

繼前兩天都在提到系統性能工程,今天來多聊一點該領域的東西。D2 簡介系統性能工程D3 性能測試成熟度模型與實踐指南 系統性能指的是對個服務的性能的研究,包括主要...

技術 Go Generic 入門筆記

Hashnode好讀版本 類型安全 過往使用interface{} a和b的類型在執行時才會被檢查,這就增加了出錯的可能性。 func Add(a, b in...

鐵人賽 SideProject30 DAY 30

技術 Day30 為Button補上對應的功能

最後一天,我們來為Button增加對應的功能,目前有的按鈕有兩種,一種是[進入資料夾],一種是[設為上傳路徑]。 那我們就先從[進入資料夾]開始,我們要製作進入...

鐵人賽 SideProject30 DAY 29

技術 Day29 Drive Service - 用Google Drive API取資料建立Carousel

我們昨天完成了整個組合Carousel的部分,今天來把資料來源換成從Google Drive API取得。 首先,我們先看一下需要哪些資料 type New...

鐵人賽 SideProject30 DAY 28

技術 Day28 用Go動態組合Flex Message 02

昨天我們完成了組成一個Bubble需要的4個區塊,今天我們透過這4個區塊把Bubble組起來,然後再用Bubble把Carousel組合起來,就可以回傳給Dri...

鐵人賽 SideProject30 DAY 27

技術 Day27 用Go動態組合Flex Message 01

昨天我們依照JSON把Flex Message刻了出來,真心覺得應該可以有一個Generate Code的工具,把用Flex Message Simulator...

鐵人賽 SideProject30 DAY 26

技術 Day26 加上Flex Message Carousel

昨天我們完成了,從Linebot收到檔案,並且上傳到Google Drive上的指定資料夾。 但是目前指定資料夾的ID是寫死的,我們也不可能每次要指定資料夾都去...

鐵人賽 Modern Web DAY 28
起步Go!Let's Go! 系列 第 28

技術 [ Day 28 ] Go 與 Gin:打造強大的 Web 應用程式 (中)

昨天我們已經學會如何使用 Gin 以及 Gorm,並且在輸入網址 http://loaclhost:8080 可以看到 JSON 格式的 message,接下來...

鐵人賽 SideProject30 DAY 25

技術 D25 Drive Service - 上傳檔案02

昨天我們已經可以成功從LineBot上收到檔案並暫存下來,今天我們透過domainDrive.SaveContent()回傳的*os.File,把他傳入adap...

鐵人賽 Modern Web DAY 27
起步Go!Let's Go! 系列 第 27

技術 [ Day 27 ] Go 與 Gin:打造強大的 Web 應用程式 (上)

在前幾天的學習中,已經建立了一個基本的文章管理應用程式,使用 Go、SQLite 和 HTML。今天,將進一步探索如何使用 Gin 框架來提升 Web 應用程式...

鐵人賽 SideProject30 DAY 24

技術 Day24 Drive Service - 上傳檔案01

今天開始來處理上傳檔案到GoogleDrive的部分~ 首先要先能在LineBot上拿到使用者傳送的檔案,我們在Callback加上一個case,透過*line...

鐵人賽 Modern Web DAY 26
起步Go!Let's Go! 系列 第 26

技術 [ Day 26 ] Go 題外話:Goroutine 和 Channel

最近一直聽到公司同事再說 Go 的高流量高併發,那這兩個又是甚麼呢?這邊舉一個生活中的例子這樣大家比較好懂: 高流量 & 高併發 假設你是一家快遞公司的...

技術 Go的Project布局淺談

圖文好讀版連結 Project Layout in Go 剛入門任何一門程式語言開發的人, 應該大多都是參考各路大神們的專案或者公司的專案在學習模仿。 一開始印...

鐵人賽 SideProject30 DAY 23

技術 Day23 Drive Service - 撈出”我的雲端硬碟”&”與我共用”下的資料夾

我們之前實現過ListFiles(),會把所有雲端硬碟上的檔案列出來,我們也確定操作GoogleDrive這段沒有問題。但我們今天的需求是要把收到的檔案傳到Go...

鐵人賽 SideProject30 DAY 22

技術 Day22 繞過 Google OAuth 在 User Agent 上的使用限制

這幾天我們都是透過電腦版的Line來做測試,但是如果是使用手機版的話,會發現當我們點擊Google OAuth的URL要進行認證授權的時候,雖然前面的步驟都一切...

鐵人賽 自我挑戰組 DAY 30
Go in 3o 系列 第 30

技術 [Day30] Go in 30 - 系統與檔案 - 檔案讀取與寫入

一、 本篇提要 接下來會說明檔案的建立、和寫入,在此之前會需要先了解什麼是檔案權限。 檔案存取權限 建立與寫入檔案 os.OpenFile() 二、檔案存取...

鐵人賽 自我挑戰組 DAY 29
Go in 3o 系列 第 29

技術 [Day29] Go in 30 - 系統與檔案 - flag 與 signals

一、本篇題要 這個主題將了解系統與檔案,像是介紹多種讀寫純文字檔和CSV格式檔案的方式,以及檔案的存取權限。我們會實作一個命令列應用程式,可以接收各種 flag...

鐵人賽 Modern Web DAY 23
起步Go!Let's Go! 系列 第 23

技術 [ Day 23 ] Go 模板引擎:動態生成 HTML 頁面的魔法

在昨天的練習中,當我們使用 GET 請求時,並成功得到網站中的資料,我們都用是終端機查看回傳的資訊,雖然一樣可以達到查看資料的目的,但好像缺少了什麼!!這就不得...

鐵人賽 SideProject30 DAY 21

技術 Day21 Drive Service - 取出OAuth Token操作Drive

今天一開始我們先來調整一下我們之前對Expiry宣告的類型,昨天仔細看發現oauth官方的Token(oauth2.Token)結構如下: type Token...

鐵人賽 SideProject30 DAY 20

技術 Day20 Login Service - OAuth Token存到Dynamodb

開始之前我們調整一下之前在adapter\google\oauth.go的OAuthLoginURL(),把原本寫死的第一個參數”state-token”改...

鐵人賽 自我挑戰組 DAY 28
Go in 3o 系列 第 28

技術 [Day28] Go in 30 - 處理JSON資料

一、本篇提要 本篇重點會著重於Go如何解析JSON,以及了解Go自有的 gob 二進位編碼功能。 解碼JSON為Go結構 將Go結構編碼為JSON 二、解碼...