All Posts

Go GRPC 实战入门 05: Interceptor 的实现

在前面 4 章我们已经从零开始编写了 Grpc 的服务端和客户端,并且还加上了认证功能以及客户端失败重试等特性。在第 3 篇和第 4 篇我们都是介绍如何使用 Interceptor 的,但是我们也仅仅是使用,在使用完前面的 Server 端和 Client 端的 Interceptor 之后,可能很多同学已经迫不及待得想知道 Interceptor 要怎么实现了,而且上周我又跳了一篇 Docker 相关的文章,所以今天我必须要来聊下怎么实现 Interceptor 了。

Docker 中 link 机制探索

可能最近在关注我博客的同学会隐隐猜到今天我可能会更新 GRPC 系列的第 5 篇,但是,很遗憾,我没有。尽管我没有更新这个系列,我也不希望让对我博客内容有兴趣的同学失望,所以我先小小透露一下下一节我就要介绍 Interceptor 的实现了,有没有很期待;同时,这一篇文章肯定也不能太水,所以我决定来聊聊 Docker 的一点小知识—关于 link 的一些内容。

Go GRPC 实战入门 04: GRPC 失败重试

在前面三节中,我已经介绍过了如果从零开始,编写 GRPC 的 Proto,编译成可以直接编写业务代码的脚手架,然后在上一节中我介绍了如果通过 GRPC 的服务端的 Interceptor 来做鉴权处理,这是服务端的,除了服务端,客户端也有类似的 Interceptor,而本文就将介绍客户端的处理。

Go GRPC 实战入门 03: GRPC 认证管理

前面两篇已经让我们可以将一个 GRPC 服务运行起来了,并且我们也了解了如何以 GRPC 或者 Restful 的形式来调用这个服务。但是,当服务运行起来之后,如何对用户进行认证授权这个我们还不知道,所以本文就以这个为主题进行介绍。

Go GRPC 实战入门 02: GRPC 转换成 REST

本文是我准备的 GRPC 系列中的第二篇,在第一篇中我已经介绍了如果开发一个 GRPC 的服务端和客户端程序,但是毕竟 GRPC 是专有协议,处于很多原因有时需要转换成 REST 形式,于是就有了 GRPC 转 REST 的需求,本文就介绍如何方便得实现这个需求。

Go GRPC 实战入门 01: 从 proto 到 rpc

本文是我准备些 GRPC 的系列中的第一篇,从最基本的 Proto 开始讲起,然后将这个 Proto 转化成真正可以使用的 RPC 服务,这里我是以 Go 语言为例进行介绍。

Linux 中断管理

因为一直依赖都是写的应用,所以对于底层的一些东西有点生疏了,于是乎就需要时不时回来回顾一番,今天我想来聊聊中断,但是这篇文章稍微遗憾一些的地方是没有用代码进行实作一下如何注册一个中断处理程序,这个留待以后填坑。

Nginx location 配置全探究

在用 Nginx 那么久以来,只是有一个印象就是 Nginx 的配置分离,然后可以设置不同的域名,对不同的域名提供不同的服务,但是有一个细节始终没认真得去了解过,那就是 Nginx 的配置中,server 里面的 location 是如何匹配的,匹配的规则和顺序又是怎样的,刚好手上有本关于 Nginx 的源码级解析书籍,于是乎就写了几个 Demo 尝试一下,这里就以这几个 Demo 为演示来探究一下 location 的匹配规则。

TCP 中的 Keepalive

这两天对一个问题突然有点兴趣,那就是因为我前面有一篇文章(CentOS 下的 TUN 与 TAP 应用)说过,我经常会通过 VPN 连接到公司的内网进行远程开发调试,这其实经常给我带来一些问题,其中一个问题就是当我连接上之后,我在连接之前建立的 SSH 远程主机的 Terminal 都被卡住了,这个时候很尴尬,连 Ctrl + C/D 都不起作用。这个问题其实一直都有,但是没有去想为什么,这两天突然灵光一闪,这难道是 TCP 的一个问题?

Raft 共识算法

在分布式环境中,选举可能是一个很大的难题了,虽然业界已经有了几套常用的解决算法,但是很多时候因为晦涩难懂就难以咀嚼下来。而学习很多时候就是一个灵感的事情,之前突然来了兴趣,在一番小小努力之下,感觉咬到点东西了,所以就写了这篇文章稍微做下总结,希望能够对你有所帮助!