「Go 组件设计与实现」封面 视频
VIP
Go 组件设计与实现
13.8
4 位字节跳动研发工程师,带你深入剖析字节基础组件的设计、实现及性能优化
首席品牌官 @ 掘金小册
学习群
首单券后价
首单券后价
¥ 34.5 立即购买
原价 ¥69
VIP借阅
免费试学
604 人加入学习
15 小节
·
约 156分24秒
介绍
目录
评论

作者介绍

讲师介绍.png

你会学到什么?

  1. 熟悉网络库的相关知识,了解网络库的一般设计,分辨网络库的不同特点以及性能优化
  2. 了解 RPC 框架高扩展性的设计思路与实践,优雅支持更多横向能力
  3. 了解 GORM 的设计与实现原理,以及如何扩展及更好的服务业务
  4. 了解高性能 JSON 库 Sonic 概念、特性、类型以及其实现原理与 RCU 同步机制在编译缓存中的应用

课程介绍

随着互联网的快速发展,几乎所有公司都盛行“小步快跑,快速试错”的开发模式,这要求研发同学能更加快速高效地完成开发任务。因此,一个优秀的组件必不可少,它相当于一个模板代码库,包含了很多基础性的功能和约定俗成的操作规范。有了它,我们只需要专心实现所需要的业务逻辑就可以,极大地提高了开发效率。

但是,在业务中真正应用各种组件的时候,我们经常遇到各种问题,比如说:

  • 业务经常需要我们设计高性能网络库,提高组件的扩展性,不知道怎么操作
  • 遇到一些组件的序列化性能差,却不知道该怎么优化
  • 想要设计出适合自己业务的组件,不知道怎么入手
  • ……

基于此,掘金携手4位字节跳动研发工程师,把 4 个已开源且成熟的组件设计与实现整合成可复制、可借鉴的内容,帮助大家快速掌握组件设计的要点与精髓。具体来说,课程主要分为四个模块。

  • 模块一:Netpoll 网络库设计与实现。 重点讲解 Netpoll 网络库的详细设计与性能优化思路,帮助大家熟悉网路库相关知识,分辨网络库的不同特点,掌握其正确使用方式。学习完本节课程能根据业务特点,选择最适合的网路库和能够自行设计网路库。

  • 模块二:Go 微服务框架 Kitex 扩展性设计和实践。 以案例的形式分析框架演进的痛点及对 Kitex 的改造,包括 Kitex 扩展性的设计、实践与思考,从而优雅支持更多横向能力。

  • 模块三:GORM 的设计与实现。 重点讲解 GORM 的设计实现与其思路,帮助大家更好地了解 GORM 的概念和工作原理,能够在做封装实现的时候给大家一定的启发。

  • 模块四:高性能 JSON - Sonic JSON 库的使用、设计与实现。 通过讲解 Sonic 库的特性、JSON 的数据结构、基本类型和数据类型,帮助大家重点掌握 Sonic JIT 的实现原理与 RCU 同步机制在编译缓存中的应用。

目录.png

适宜人群

  1. 具备 Go 语言开发经验;
  2. 拥有 RPC 开发或者网络编程经验;
  3. 使用过 ORM 或者数据库;
  4. 有一定的背景知识(如汇编语言、x86_64 指令集等内容);
  5. 对 JSON 有一定的了解。

购买须知

  1. 本课程为图文形式内容服务,共计 15 节;
  2. 全部文章已更新完成;
  3. 购买用户可享有课程永久的阅读权限;
  4. 购买用户可进入课程微信群,与作者互动;
  5. 掘金课程为虚拟内容服务,一经购买成功概不退款;
  6. 掘金课程版权归北京北比信息技术有限公司所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表,违者将依法追究责任;
  7. 在学习掘金课程的过程中,如有任何问题,请邮件联系 xiaoce@xitu.io
推荐小册
京ICP备18012699号-3 ©版权所有 北京北比信息技术有限公司

公司地址:北京市海淀区信息路甲28号13层B座13B-5 | 公司座机:010-83434395