Web Analytics

Go语言联合作者Rob Pike专访:Go确实已成为云基础架构的语言

> 尽管看到Docker,Kubernetes和用Go编写的云计算的许多其他组件令人欣喜和重要,但也许并不奇怪。Go确实已经成为云基础架构的语言。- Rob Pike,Go编程语言的联合作者 本文翻译自《Rob Pike interview: “Go has indeed become the language of cloud infrastructure”》。 简介 -- 我们与Go编程语言之...

May 1, 2020 · 10 min · Tony Bai

后端程序员一定要看的语言大比拼:Java vs. Go vs. Rust

这是Java,Go和Rust之间的比较。这不是基准测试,更多是对可执行文件大小、内存使用率、CPU使用率、运行时要求等的比较,当然还有一个小的基准测试,可以看到每秒处理的请求数量,我将尝试对这些数字进行有意义的解读。 为了尝试尽可能公平比较,我在此比较中使用每种语言编写了一个Web服务。Web服务非常简单,它提供了三个REST服务端点(endpoint)。 Web服务提供的服务端点 这三个Web服...

May 1, 2020 · 9 min · Tony Bai

go protobuf v1败给了gogo protobuf,那v2呢?

近期的一个项目有对结构化数据进行序列化和反序列化的需求,该项目具有**performance critical**属性,因此我们在选择序列化库包时是要考虑包的性能的。 github上有一个有关Go序列化方法性能比较的repo:go\_serialization\_benchmarks,这个repo横向比较了数十种数据序列化方法的正确性、性能、内存分配等,并给出了一个结论:推荐**gogo prot...

April 24, 2020 · 7 min · Tony Bai

图解git原理的几个关键概念

git是那个“爱骂人”的Linux之父Linus Torvalds继Linux内核后奉献给全世界程序员的第二个礼物(不能确定已经逐渐老去的Torvalds能否迸发第三春,第三次给我们一个超大惊喜^\_^)。这里再强调一下,git读作**/git/**,而不是**/dʒit/**。 在诞生十余载后(2005年发布第一版),**git**毫无争议地成为了程序员版本管理工具的首选,它改变了全世界程序员的...

April 7, 2020 · 15 min · Tony Bai

Hello,WireGuard

2020年1月28日,Linux之父Linus Torvalds正式将WireGuard merge到Linux 5.6版本内核主线: 图:WireGuard被加入linux kernel 5.6主线的commit log 这意味着在Linux 5.6内核发布时,linux在内核层面将**原生**支持一个新的VPN协议栈:WireGuard。 图:WireGuard Logo 一. VPN与Wir...

March 29, 2020 · 13 min · Tony Bai