← 返回文章

周报-Vol.16 20220313

周报总结

基础进阶

  1. gRPC 简介实践

对 gRPC 作了一个简单的介绍,定义、使用方式以及特性。

https://xie.infoq.cn/article/923fcbc49b72654e91919bc4c

  1. 构建 Go 应用 docker 镜像的十八种姿势

很简单的一个 docker 入门教学应用

https://xie.infoq.cn/article/ba31adec67f82c64afa27f068

  1. 一把梭:REST API 全用 POST

一把梭:REST API 全用 POST 这个观点是错的。

https://coolshell.cn/articles/22173.html

  1. QUIC协议详解

QUIC,发音同quick,是"Quick UDP Internet Connections"的简称,是一种通用的传输层网络协议。QUIC与TCP相同,是一种有连接的传输协议。但是与TCP不同的是QUIC是建立在UDP传输层协议之上的,实现了在两个端点之间的多路复用。QUIC的是在用户空间实现的,TCP/UDP则是在内核空间实现的。

https://www.cnblogs.com/harrypotterjackson/p/15977660.html

Gopher 提升

  1. Learn Go with tests

通过编写测试学习 Go 语言

为测试驱动开发打下基础。Go 是学习测试驱动开发的优秀语言,因为它简单易学而且内置测试功能

相信你很快就可以使用 Go 语言编写健壮的、经过良好测试的系统

https://studygolang.gitbook.io/learn-go-with-tests/

  1. Go by Example 中文版

这里就是很多使用的例子和场景,解决实际问题的小 demo,告诉我们官方的类库怎么用。

https://gobyexample-cn.github.io/

  1. Tutorial: Getting started with generics

Go 官方的新教程:泛型

https://go.dev/doc/tutorial/generics

  1. Tutorial: Getting started with fuzzing

Go 官方的新教程:fuzz test

https://go.dev/doc/tutorial/fuzz

  1. golang 使用总结(1)

在开发的过程中遇到了几处比较有趣的地方。做个笔记记录,同时方便其人查阅、快速解决类似的问题。

  • 锁拷贝问题(Mutex Copy )
  • 安全的 marshal/ unmarshal 含有锁的结构(Safe marshal/unmarshal structure with lock)
  • 将 Proto 序列化的结构放入到 json 的字段中(Put the structure of the Proto serialization into the json field)

https://juejin.cn/post/7074515900740665374

  1. 用Go构建你专属的JA3指纹

在这篇文章中将会简单回顾https的握手流程,并基于读者的提问题解释什么是JA3指纹以及如何用Go定制专属的JA3指纹。

https://juejin.cn/post/7073264626506399751

  1. Go错误集锦 | nil通道及其使用场景

在Go中有时候忘记使用nil通道也是经常犯的一个错误。本节我们一起来看看什么是nil通道,为什么要使用nil通道。

https://juejin.cn/post/7072896652776292382

  1. golang常用库:配置文件解析库/管理工具-viper使用

viper是一个配置管理的解决方案,它能够从 json,toml,ini,yaml,hcl,env 等多种格式文件中,读取配置内容,它还能从一些远程配置中心读取配置文件,如consul,etcd等;它还能够监听文件的内容变化。

https://juejin.cn/post/7072630559595298852

  1. Go1.18 新特性:多 Module 工作区模式

Go 的依赖管理,也就是 Go Module。从推出到现在,也已经有了一定的年头了,吐槽一直很多,官方也不断地在进行完善。

Go1.18 将会推出一个新特性:Multi-Module Workspaces,用于支持 Module 多工作区,能解决以往的一系列问题。

https://eddycjy.com/posts/go/118-module/

小工具

  1. 我给公司用了这款工具,领导直接给我涨了两千工资

YApi 结合 Swagger 使用果然很强大!之前使用 Postman 结合 Swagger 使用时,文档查看、自动同步的问题都得到了解决,为了保证我们 API 文档访问的安全性还提供了权限管理功能。当 API 数据格式定义好后,Mock 功能让前端无需后台实现也可以调试接口。不过对于 JSON 格式支持有点偏弱,要是能对 JSON 数据进行折叠显示就更好了!

https://xie.infoq.cn/article/eebccd93533027feadfa1e8a5

  1. 百灵快传(B0Pass)

基于Go语言的高性能 “手机电脑超大文件传输神器”、“局域网共享文件服务器”。

只需一个文件(exe)双击开启。

https://github.com/bitepeng/b0pass

  1. Deskreen

一个屏幕分享软件,可以把桌面电脑的屏幕(Windows、MacOS、Linux)分享到局域网内的任意设备,只要对方有浏览器就可以接收。

https://deskreen.com/

  1. SingleFile

浏览器保存网页时,默认会生成一个 HTML 文件和一个文件夹。这个插件可以将网页的所有内容保存成单个 HTML 文件,把外部 JavaScript 和 CSS 文件变成页内脚本,并把图片都改成页内 Base64 字符串。

https://github.com/gildas-lormeau/SingleFile

算法题(每星期一道)

  1. \

认知升级

  1. 全链路压测(七):核心链路四问

这篇文章讲了核心链路的概念、原因、具体做法和目的。

https://xie.infoq.cn/article/915820fe4fc47d8e68aa59748

  1. 写给 20 几岁的程序员

这是一个大龄程序员的分享,希望对 20 几岁的后浪们有点帮助。 大龄程序员是男的,15 年工作经验,7 年大厂经历,3.5 年独角兽公司经历,目前瞎折腾当中。 好为人师是一种病,所以我尽量让病症表现得不那么明显,多分享经历和见解(主观),少表达情感。卖课割韭菜我于心不忍,所以尽量谈本质问题,而不告诉你该怎么学习 Javascript 或者 Go,也不鼓动你去做 SOLO 或副业,更不想贩卖焦虑。但是我会谈到这些问题。

https://xie.infoq.cn/article/60e3819ca651e32b0266e970c

  1. Go 设计哲学:少即是多,哪里来的?

之前在 Go 社区分享知识和经验时,经常会听见诸如:less is more、少即是多,大道至简、大道不停地至简等黑话。

甚至讨论 Go issues 和提案时,都会有人用 “less is more” 来反驳或做为论点支撑,非常的有意思。大家都会很好奇,出处是哪里,是什么意思?

https://juejin.cn/post/7073323749184897038#heading-15

  1. 我完成了10000小时开发3D引擎

这个博主从 2015年开始,到现在实现了 10000小时学习计划。

https://www.cnblogs.com/chaogex/p/15986803.html

  1. 平时的工作如何体现一个人的技术深度?

平时工作中很多时候需求细而碎的,如何在工作中积累技术深度?又如何体现一个人的技术深度?

https://www.cnblogs.com/xxcanghai/p/ping-shi-de-gong-zuo-ru-he-ti-xian-yi-ge-ren-de-ji.html