All Posts

editor.md 插件支持

Editor.md 是我非常喜欢的一个 Web 端 Markdown 编辑器,我经常用他写笔记和博客文章,因为用得多了,所以对它有一些要求,就需要自己开发了,这篇文章就是介绍如何用插件扩展它。

Linux TCP 的未来拼接技术 Sockmap 解读

在收藏夹中一直压着一篇 Clouflare 介绍他们使用 SOCKMAP 的文章,在清库存的时候就想顺便总结一下这篇文章那个,因为这里使用的是我在这两年很想尝试的 eBPF 技术,这篇文章给了我一些思路。

Prometheus 的 Summary 和 Histogram

在日常的软件监控中,对于一些离散且数量庞大的值我们通常会以统计学的方式来进行监控,例如常说的 TP99。在 Prometheus 中,有两个基本数据类型可以实现这个功能,本文就将介绍他们分别是如何做的以及如何选择他们。

使用 FFMPEG 编辑视频

经常在观看视频或者处理视频的时候,总是有一些很简单的小需求,例如截取视频某一段时间的内容,或者将一个视频按照比赛场次分割成多个视频,因为这个需求太简单了,所以特地安装一个视频处理软件就不太划算,刚好,我知道有个开源的工具 FFMPEG 是许多视频处理软件的底层依赖,所以我就尝试学习如何用它处理一个简单的视频,本文就总结一下我用到的命令。

Kafka 基础知识

虽然我一直感觉我做过 Kafka 的笔记,但是却没有找到,所以最近因为有项目使用了 Kafka,为了项目使用的每一个细节,不得不认真学习一下 Kafka(结果证明这是很正确的),顺便整理了一下主要的学习内容。

Go 框架 Gin 解析:HTTP 的处理

Gin 作为一个流行的 HTTP 框架,使用的人数非常多,但是实际上 Gin 也是足够的简单,以至于没有太多可以讲的。但是,虽然可讲的不多,也是有一些描述和思路值得一提,这篇文章是系列文章的第一篇,主要是介绍一下 Gin 是如何处理 HTTP 请求的。因为 Gin 本质上是扩展原生的 HTTP Server,所以在网络模型上没有太多的介绍之处,所以这里主要关注 Gin 的一些主要数据结构,以及这些数据结构是如何与原生的 HTTP Server 结合起来的。

Flutter 安装配置

最近趁着假期又在新机器上玩了一下 Flutter,感觉流畅度比 3 年(2020)前好多了,整个从零开始过程几乎没遇到问题,流畅地完成了新手指导,所以顺带记录一下这个过程,以及把之前遇到的问题整理了进来。

Go 语言如何进行竞态分析

没错,这里我确实是说的竞态,而不是静态。Go 因为其简单和出色的并发开发体验而广受欢迎,但是我们经常还是会写出有 Data Race 的代码,但是 Go 很多时候却可以帮助我们检查出来,这篇文章就尝试介绍一下 Go 是如何做到的。

Github 给 markdown 字体添加颜色

这也是一篇放了很久备忘,在写 README 的时候,因为一些特定的目的,所以想给不同的文本设置一些不同的颜色,在本地编辑工作地好好的,结果一 push 上去居然不工作了,颜色就自动消失了,所以这里总结一下能显示不同颜色的一些常用做法。

Mac 键盘的一些小事

最近在洗键盘的时候发现一些有趣的事情,自己想不出来原因,所以查了一下资料分享一下。