掘金联合 4 位字节跳动讲师,推出《Go 组件设计与实现》,带你深入剖析字节基础组件的设计、实现及性能优化。
随着互联网的快速发展,几乎所有公司都盛行“小步快跑,快速试错”的开发模式,这要求研发同学能更加快速高效地完成开发任务。因此,一个优秀的组件必不可少,它相当于一个模板代码库
,包含了很多基础性的功能和约定俗成的操作规范。有了它,我们只需要专心实现所需要的业务逻辑就可以,极大地提高了开发效率。
但是,在业务中真正应用各种组件的时候,我们经常遇到各种问题,比如说:
- 业务经常需要我们设计高性能网络库,提高组件的扩展性,不知道怎么操作
- 遇到一些组件的序列化性能差,却不知道该怎么优化
- 想要设计出适合自己业务的组件,不知道怎么入手
- ……
基于此,掘金携手4位字节跳动研发工程师,把 4 个已开源且成熟的组件设计与实现整合成可复制、可借鉴的内容,帮助大家快速掌握组件设计的要点与精髓
。
具体来说,这门课程主要分为四个模块。
- 模块一:Netpoll 网络库设计与实现 。 重点讲授 Netpoll 网络库的详细设计与性能优化思路,帮助大家熟悉网路库相关知识,分辨网络库的不同特点,掌握其正确使用方式,学习完本节课程能根据业务特点,选择最适合的网路库和能够自行设计网路库。
- 模块二:Go 微服务框架 Kitex 扩展性设计和实践。 重点以案例的形式分析框架演进的痛点以及其如何改造 Kitex,Kitex 扩展性设计、实践与思考,从而优雅支持更多横向能力。
- 模块三:GORM 的设计与实现。 帮助大家更好的了解 GORM 的概念和工作原理,重点掌握 GORM 的设计实现与其思路,给大家一定的启发做一些更好的封装实现,同时也能激励大家动手设计软件,更好的服务业务。
- 模块四:高性能 JSON - Sonic JSON 库的使用、设计与实现。 Sonic 是高性能易用、功能丰富,并且与标准库基本兼容的 JSON 编解码器,帮助大家清晰了解 Sonic 库的特性,JSON 的数据结构、基本类型和数据类型,重点掌握 Sonic JIT 的实现原理与 RCU 同步机制在编译缓存中的应用。
最后,如果你想要获得更多组件设计的灵感,把它们更好地应用到工作中,我们希望你有以下基础:
- 具备 Go 语言开发经验
- 拥有 RPC 开发或者网络编程经验
- 使用过 ORM 或者数据库
- 有一定的背景知识(如汇编语言、x86_64 指令集等内容)
- 对 JSON 有一定的了解
有了这些基础再来学习本课程,你肯定能够更加灵活地处理开发问题,对自己的项目开发更游刃有余。在学习的过程中,也欢迎你体验和使用课程中讲到的组件,遇到任何技术层面的问题,都可以在评论区和学习群内提问,字节讲师团会积极解答~
此刻,如果你已经下定决心,想要对 Go 组件的设计原理一探究竟了,千万不要错过早鸟5折优惠期👉🏻原价:¥69 ,限时仅需:¥34.5,优惠时间:1月7日-1月13日
还等什么?快扫码加入 Go 组件的学习吧!