Web Analytics

Go 1.18新特性前瞻:Go工作区模式

本文永久链接 – https://tonybai.com/2021/11/12/go-workspace-mode-in-go-1-18 Go 1.18版本如无意外,将于2022年2月发布。 在这个版本中,除了包含万众期待的Go泛型之外,还包含很多实用的功能特性,Go工作区模式(Go workspace mode)就是其中之一,它弥补了当前go module构建模式的一些不足,堪称是go module构建模式的最后一块拼图。这篇文章我们就来看看什么是Go工作区模式,它究竟能解决什么问题。 ...

November 12, 2021 · 10 min · Tony Bai

gRPC客户端的那些事儿

本文永久链接 – https://tonybai.com/2021/09/17/those-things-about-grpc-client 在云原生与微服务主导架构模式的时代,内部服务间交互所采用的通信协议选型无非就是两类:HTTP API(RESTful API)和RPC。在如今的硬件配置与网络条件下,现代RPC实现的性能一般都是好于HTTP API的。我们以json over http与gRPC(insecure)作比较,分别使用ghz和hey压测gRPC和json over http的实现,gRPC的性能(Requests/sec: 59924.34)要比http api性能(Requests/sec: 49969.9234)高出20%。实测gPRC使用的protobuf的编解码性能更是最快的json编解码的2-3倍,是Go标准库json包编解码性能的10倍以上(具体数据见本文附录)。 ...

September 17, 2021 · 26 min · Tony Bai

Go语言很无聊…其实它妙不可言![译]

无聊是一种很奇妙的状态,它可以稀释掉人类的一切情感。- 《古董局中局》马伯庸 在GopherCon 2020技术大会上(线上虚拟大会),Jon Bodner为全球gopher们做了主题为“Go Is Boring”的精彩演讲(关注公众号iamtonybai,发送gophercon2020即可得到GopherCon 2020技术大会幻灯片资料)。 ...

January 7, 2021 · 12 min · Tony Bai

Go语言开源十周年

本文翻译自Go官方博客上Russ Cox代表Go核心团队发表的“Go Turns 10″一文。 生日快乐,Go! 这个周末,我们庆祝Go正式对外发布10周年,即Go作为开源编程语言和构建现代网络软件生态系统的10周年诞辰。 为了纪念这一时刻,Go gopher的创建者Renee French(用下面的新作)描绘了这个令人愉快的场景: ...

November 9, 2019 · 5 min · Tony Bai

提高您的kubectl生产力(第三部分):集群上下文切换、使用别名减少输入和插件扩展

本文翻译自《Boosting your kubectl productivity》。 第一部分:什么是kubectl? 第二部分:命令完成、资源规范快速查看和自定义列输出格式什么是kubectl? 4. 轻松切换集群和名称空间 当kubectl必须向Kubernetes API发出请求时,它会读取系统上所谓的kubeconfig文件,以获取它需要访问的所有连接参数并向API服务器发出请求。 ...

August 31, 2019 · 15 min · Tony Bai

提高您的kubectl生产力(第二部分):命令完成、资源规范快速查看和自定义列输出格式

本文翻译自《Boosting your kubectl productivity》。 第一部分:什么是kubectl? 1. 通过命令完成(command completion)减少输入 命令完成是提高你的kubectl生产力的最有用但经常被忽视的技巧之一。 ...

August 30, 2019 · 10 min · Tony Bai

提高您的kubectl生产力(第一部分):什么是kubectl

本文翻译自《Boosting your kubectl productivity》。 如果您使用Kubernetes,那么kubectl可能是您最常用的工具之一。每当您花费大量时间使用某种特定工具时,值得深入了解并了解如何有效地使用它。 本文包含一系列提示和技巧,使您对kubectl的使用更加高效和有效。同时,它旨在加深您对Kubernetes各方面工作的理解。 ...

August 29, 2019 · 7 min · Tony Bai

Go正走在成为下一个企业级编程语言的轨道上

发展演化了十年的Go语言已经被证明了是云计算时代的首选编程语言,但Go的用武之地显然不局限于此。Kevin Goslar近期在Hacker Noon发表了一篇名为:《Go is on a Trajectory to Become the Next Enterprise Programming Language》的文章,阐述了Go可能成为下一个企业编程语言的理由,这里是那篇文章的中文译文,分享给大家。 ...

May 3, 2019 · 14 min · Tony Bai

解决Kubernetes 1.7.3 kube-apiserver频繁异常重启的问题

近期将之前的一个用kube-up.sh安装的Kubernetes 1.3.7的环境更换为最新发布的用kubeadm安装的Kubernetes 1.7.3版本。新版本的安装过程和之前的采用kubeadm安装的k8s 1.5.x、1.6.x版本类似,这里不赘述了。但在安装Dashboard后,发现了一些问题,这里记录一下解决的过程。 一、第一个问题 我们先来做一下回顾。在《解决Kubernetes 1.6.4 Dashboard无法访问的问题》一文中,我们通过把用户admin bind到cluster-admin这个clusterrole角色上使得dashboard得以正常访问。但访问几次后,我发现了一个问题:那就是用safari访问dashboard时,浏览器可以正常弹出鉴权对话框,让我输入用户名和密码;但用chrome访问时,总是无法弹出鉴权对话框,而直接显示如下错误: ...

August 9, 2017 · 5 min · Tony Bai

一步步打造基于Kubeadm的高可用Kubernetes集群-第二部分

续接上文。 五、第三步:启动emei、wudang上的apiserver 跨三个node的etcd cluster已经建成并完成了数据同步,下面进行ha cluster改造的重要一步:启动wudang、emei上的apiserver ...

May 15, 2017 · 10 min · Tony Bai