GopherChina 2019

大型微服务框架设计实践

比较偏理论,介绍的概念基本在现有的主流公司都有一定程度的应用,思路大同小异,但是将微服务比作操作系统,个人觉得这个比喻很不错,我们开发基础组件需要保有这个为业务服务的思维。

用Go打造Grab的路径规划及ETA引擎

寻路算法,与之前几届内容差不多。

TiDB 的 Golang 实践

开发 TiDB 过程中的一些实践,自研的 Schrodinger,模拟实际场景中硬件、软件中多种多样意外场景的随机测试平台,支持 gofail,自定义 failpoint;goroutine 内存泄露的讨论;高效的编码格式。

How to write testable code

单元测试的编写思想,针对可导出函数进行单元测试。
更加完整的测试结果输出:

func TestSplit(t *testing.T) {
 tests := map[string]struct {
 input string
 sep string
 want []string
 }{
 "simple": {input: "a/b/c", sep: "/", want: []string{"a", "b", "c"}},
 "wrong sep": {input: "a/b/c", sep: ",", want: []string{"a/b/c"}},
 "no sep": {input: "abc", sep: "/", want: []string{"abc"}},
 "trailing sep": {input: "a/b/c/", sep: "/", want: []string{"a", "b", "c"}},
 }
 for name, tc := range tests {
 t.Run(name, func(t *testing.T) {
 got := Split(tc.input, tc.sep)
 diff := cmp.Diff(tc.want, got)
 if diff != "" {
 t.Fatalf(diff)
 }
 })
 }
}

关于TDD的一个YouTube视频
《GopherChina 2019》

Go 业务基础库之 Error & Context

错误处理的一些思路分享;Context的使用建议,在不确定的时候就是用 context.TODO;很多很实在的编程经验,受益良多。

Go 同步和并发设计模式

基础深入的讲解。

  • Mutex
  • RWMutex
  • Cond
  • Waitgroup
  • Once
  • Pool
  • Map
  • ReentrantLock
  • Semaphore
  • SingleFlight
  • ErrGroup
  • SpinLock
  • Fslock
  • Concurrent Map

后续还有原子操作、channel 和内存模型的讲解。

百度APP Go语言实践

开发框架,依赖管理,代码检查的相关介绍。

用Go打造实时音视频SaaS云服务

公司业务介绍,实践中遇到的问题分享,

基于Minio的对象存储方案在探探的应用

技术方案选型过程,压测中遇到的问题,以及相关的解决思路。Minio不能胜任小型数据的大量级读写操作,采用 leveldb 来有序化读写流程,从而提高效率。

从 0 开始用 Go 实现 Lexer & Parser

内容很深奥…
分享很有趣…

高性能高可用开发框架TarsGo的腾讯实践

不错,想用。

闪电网络—BTC小额支付解决方案

个人感觉还是在进行中心化。

Using Go Modules in everyday life

go mod 的使用技巧,还有 goland 的相关操作。

用Go构建高性能数据库中间件

赶火车去了…

golang在花椒直播业务场景下的微服务应用

知乎社区核心业务 Golang 化实践

    原文作者:MEX
    原文地址: https://segmentfault.com/a/1190000019026587
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞