COSCUP x RubyConf TW 2021

Memory Management in High-Performance Go Applications: A Case Study of Pebble
07-31, 13:20–13:50 (Asia/Taipei), TR209
Language: 漢語


Translate Title

Memory Management in High-Performance Go Applications: A Case Study of Pebble

Talk Length

40

您是否知悉並同意如採遠端形式分享,需提供預錄影片(您需同意大會才能接受您的稿件) – yes Difficulty

中階

hackmd url

https://hackmd.io/@coscup/HyHyr6PR_/%2F%40coscup%2FSkQ0VTPA_

slido url

https://app.sli.do/event/j7lthbzn

Abstract

透過研究 Pebble (CockroachDB 底層的 key-value storage engine),談談在高效能的需求情境下, Go 專案要如何進行記憶體管理。

English Abstract

Go has several powerful and eye-catching memory management features, such as its highly performant garbage collection and accurate escape analysis. By leveraging these features, Gophers can develop their applications efficiently without worrying about the memory allocation and management stuff in general cases. Therefore, Go is suitable for building Web-backend or cloud-native software. However, when it comes to building high-performance and data-intensive Go applications, garbage collection is still problematic since high pressure and unacceptable stop-the-wall time.
In this talk, the author will introduce the memory management approaches used for high-performance and data-intensive Go applications by reviewing a Go project - Pebble, an underlying key-value storage engine used by a well-known Go database system - CockroachDB.