写点什么

Golang 内存管理探微——如何高效使用 Golang 内存以及腾讯云实战

  • 2019-08-17
  • 本文字数:836 字

    阅读完需:约 3 分钟

Golang 内存管理探微——如何高效使用 Golang 内存以及腾讯云实战

QCon广州2019大会上,杨晖讲师做了《Golang 内存管理探微——如何高效使用 Golang 内存以及腾讯云实战》主题演讲,主要内容如下。


演讲简介


Go 语言从 2009 发布以来,到今年正好十周年。Go 语言具备天生并发、内置 GC、安全性高、语法简单、编译快速等特点,同时背靠 Google 这棵大树,目前越来越多大公司使用 Go 语言重构后端基础架构和服务,并且使用 Go 语言开发的 Kubernetes 和 Docker 对服务进行管理和部署。后端服务开发对内存使用的要求一直都很高,使用 Go 语言进行开发也一样。Go 语言使用了自动的垃圾回收机制减少了内存使用方面的难度,这是 Go 语言作为现代语言的基本特征,但是如果不理解其内存管理机制,在实际编码中也会在一些细节处理上产生迷惑。深入了解 Golang 的内存管理机制对我们日常使用 Go 语言也有很大的帮助,比如如何避免出现内存泄漏。


本次分享从 Golang 内存管理原理介绍入手,尝试从 Golang 的源代码中去理解 Golang 的内存管理机制,然后结合腾讯教育云在使用 Golang 的实际案例,去剖析如何高效地使用 Golang 的内存,同时规避出现内存管理问题。


内容大纲


  1. Golang 内存分配和管理介绍;

  2. 从 Golang 源代码理解 Golang 内存管理的方式(避免内存碎片,多线程下的内存管理机制,垃圾回收机制);

  3. 使用 Golang 中如何规避内存泄漏问题;

  4. 在实际项目中如何高效利用好 Golang 内存管理机制。


讲师介绍


杨晖


腾讯 教育云技术负责人


12 年后台开发经验,长期从事并关注高性能服务开发,使用过 PHP,C++,Golang 等语言搭建后台服务。目前负责腾讯教育行业中心研发工作,团队技术栈在 2018 年初全面转向 Go 语言和微服务框架,目前使用 beego,gRPC 等框架构建教育云新工科实验室、教育 AI PaaS 能力(智聆口语评测作业批改等)、以及教育云等项目,使用持续集成工具(QCI)、腾讯云端的容器组件(Kubernetes、Docker)、CLB、ELK 等工具打造教育云整套微服务框架,并在各个项目中具体实践和优化。












完整演讲 PPT 下载链接


https://qcon.infoq.cn/2019/guangzhou/schedule


2019-08-17 00:004296

评论 2 条评论

发布
用户头像
恶补了,谢谢分享,这边问下博主可以把文章转载到ApiPost博客中吗,当然了我们会标明出处
2021-08-24 17:06
回复
用户头像
$ go test -bench=ConcatStrings ./gomemory/...
goos: darwin
goarch: amd64
pkg: go-example/gomemory
BenchmarkConcatStrings/b1-str.plus-8 4653 248318 ns/op
BenchmarkConcatStrings/b2-fmt.Sprint-8 13009 93901 ns/op
BenchmarkConcatStrings/b3-strings.Join-8 119884 9334 ns/op
BenchmarkConcatStrings/b4-bytes.Buffer-8 147804 8244 ns/op
BenchmarkConcatStrings/b5-strings.Buffer-8 185582 6056 ns/op
PASS
ok go-example/gomemory 9.229s

展开
2020-05-01 12:55
回复
没有更多了
发现更多内容

阿里云数据库 SelectDB 版全面商业化!开启现代化实时数据仓库的全新篇章

SelectDB

大数据 阿里云 数据仓库 数据分析 云原生数据库

墨天轮《2023年中国数据库行业年度分析报告》正式发布!

墨天轮

人工智能 数据库 时序数据库 图数据库 向量数据库

TiDB Vector + Dify 快速构建 AI Agent

TiDB 社区干货传送门

实践案例 应用适配 数据库前沿趋势

星辰资讯:TiDB v8.1.0 发版!稳!

TiDB 社区干货传送门

新版本/特性解读 8.x 实践

快速上手TiDB,体验全新的一栈式实时HTAP数据库

TiDB 社区干货传送门

安装 & 部署

一文对比 Amazon Aurora 与 TiDB

TiDB 社区干货传送门

数据库架构选型 数据库架构设计

【TiDB 社区第三届专栏征文大赛】TiDB 在单机上模拟部署生产环境集群

TiDB 社区干货传送门

版本测评 安装 & 部署 8.x 实践

TiDB 迁移升级思考

TiDB 社区干货传送门

版本升级 管理与运维 应用适配 7.x 实践

AI日报|GPT-4o向免费用户开放!AI助手“腾讯元宝”上线应用商店

可信AI进展

精彩回顾!月之暗面安全实践思考分享

云起无垠

和鲸“101数智领航计划”——在武大解码 GeoAI,地理空间智能(GeoAI)学术研讨会及编程工作坊圆满落幕

ModelWhale

人工智能 遥感影像 气象预测 地球科学 地理空间智能

深入揭秘 TiDB LTS v8.1.0:为何这次更新是数据管理者的福音?

TiDB 社区干货传送门

8.x 实践

反向代购系统搭建|逆向海淘平台搭建|对接淘宝京东1688微店拼多多等国内平台货源

tbapi

淘宝代购系统 逆向淘宝代购系统 海淘系统

Aloudata 重磅发布《NoETL 开启自动化数据管理新时代》白皮书

Aloudata

数据管理 noetl

TiDB多数派节点故障恢复指南

TiDB 社区干货传送门

实践案例 集群管理 管理与运维 6.x 实践

抓包神器Charles:解析网络数据传输的秘密

霍格沃兹测试开发学社

快速入门:使用 JavaScript 读取文件的最佳实践

Apifox

JavaScript 程序员 前端 Web 读取文件

Charles抓包神器:深度解析网络数据传输的秘密

测吧(北京)科技有限公司

测试

技术分享 | SpringBoot 流式输出时,正常输出后为何突然报错?

LigaAI

spring 大模型 java 问题分析及解决 企业号 2024年5月 PK 榜

RUM是什么?它能解决什么问题?

乘云数字DataBuff

前端监控 可观测性 RUM

TiUP 源码初探

TiDB 社区干货传送门

集群管理 管理与运维 安装 & 部署 TiDB 源码解读

Golang 内存管理探微——如何高效使用 Golang 内存以及腾讯云实战_QCon_杨晖_InfoQ精选文章