Jiajun的技术笔记
享受技术带来的快乐~分布式系统/高并发处理/Golang/Python/Haskell/C/微服务/Android/安卓/Kotlin/软件工程/源码阅读与分析
TiDB Coprocessor 源码解析
《TiDB 源码阅读(六):TiDB Coprocessor 源码解析》TiDB 是存储和计算分离的设计,当 TiDB 的物理计划优化完成后,就需要将真正的取数请求发给 TiKV。而由于数据是分布在多个 TiKV节点的,因此需要有一个框架来统筹计算,汇总结果,并将结果返回给 TiDB Server。这就是我们这篇文章要看的 coprocessor 模块...
TiDB 源码阅读:索引机制解析
《TiDB 源码阅读(五):索引》## 索引的相关概念数据库索引可以按照多种维度进行分类...
TiDB 源码阅读(四):AST、逻辑计划、物理计划
《TiDB 源码阅读(四):AST、逻辑计划、物理计划》前面我们已经看过服务端如何监听, 以及接受请求,开始处理请求到最后返回数据的大体流程。 这篇文章中,我们再度探索AST、逻辑计划和物理计划,以求有更深入的了解...
TiDB 源码阅读:数据插入流程
《TiDB 源码阅读(三):插入数据》在这一篇文章中,我们主要来看看TiDB是怎么执行INSERT语句、 如何编码数据写入数据的。前面我们已经看过,一条SQL语句的大概执行过程, 大概是解析AST、生成逻辑计划、优化逻辑计划、生成物理计划、优化物理计划、 执行物理计划、返回数据...
TiDB 源码阅读:MySQL 协议概览
《TiDB 源码阅读(二):MySQL协议概览》今天我们来结合TiDB源码,一起看看MySQL通信协议大概的样子, 不会深究到每一个字节,有个大概了解即可。 部分内容是AI生成,写的挺好的我就懒得敲键盘了...
深入 TiDB 源码:服务监听与请求处理流程解析
《TiDB 源码阅读(一):服务监听、请求处理流程概览》对于能独立运行的,接受请求的服务端, 阅读源码,都是先从 main 函数开始。我比较喜欢的思路是从一个请求的处理流程入手,看看一条SQL运行, 到底是如何被 TiDB 处理的...
用 Siri 控制虚拟机的启停
《用 Siri 来控制虚拟机开启和关闭》我有下载专用的虚拟机和游戏专用的虚拟机,每次打开使用, 都要通过 SSH 进去执行命令,或者用 cockpit 网页进行开关,最近发现 iOS 快捷指令可以执行 SSH 命令,配置一个快捷指令,就可以通过 Siri 进行控制了...
ToB SaaS 服务的痛点与反思
《ToB SaaS 服务之殇》我的一些经验和想法,随手写写。1. 要能把客户伺候的舒舒服服,要不然,哈哈。让大客户掏钱是很难的...
TiDB Lightning 源码阅读
《TiDB Lightning 源码阅读》## 前言Lightning 是 TiDB 的高速数据导入工具,专门用于将 TB 级别的数据快速导入到 TiDB 集群中。作为 TiDB 生态系统的重要组件,Lightning 在大规模数据迁移场景中发挥着至关重要的作用...
Wake on LAN 实现工作机的自动开关机
《Wake on LAN 实现工作机的自动开关机》我的工作机是一台配置较高的台式机,同时也就意味着, 开机以后,功率比较高。之前还不觉得,买了一个统计功率的插座发现,待机都能80多瓦, 为了避免不必要的浪费,因此决定折腾一下自动开关机...
KVM 穿透板载蓝牙和无线网卡
《KVM 穿透板载蓝牙和无线网卡》我的Host一直是Linux,但是偶尔会打游戏, 因此有一台 Windows 虚拟机,最近想要把板载蓝牙和无线网卡穿透进去,但是都遇到了一些小困难需要解决, 因此记录成文...
CockroachDB Serverless 架构
《CockroachDB Serverless Architecture》这篇文章只是当一个“书签”的作用,最近看了一下 CockroachDB Serverless 数据库产品的公开架构文档和视频,写的太好了,值得学习!...
podman 无故退出
《podman 无故退出》最近把 docker 删了,换成了 podman,但是遇到一件非常诡异的事情:容器启动以后,加上了 --restart=always,加上了 -d,但是总会发现,容器会无缘无故退出,而且是一堆容器一起退出,inspect 的时候又发现 ExitCode 为 0,相当诡异...
Cursor 中 Ctrl+L 快捷键冲突问题
作者在 Linux 下使用 Cursor 编辑器时,发现默认的 Ctrl+L(添加到聊天)与终端清屏快捷键冲突。 文章记录了这一具体工具使用中的痛点及可能的解决方向,适合 Cursor 用户参考。
用 Podman 替换 Docker
简要对比了 Podman 与 Docker 的命令异同,指出 Podman 无守护进程架构与 Docker 客户端-服务器架构的主要区别。 适合正在考虑从 Docker 迁移至 Podman 的用户快速了解核心差异。
在 XFCE4 中使用 XMonad
作者分享了使用 XMonad 作为窗口管理器长达 13 年的经验,并探讨了如何将其与 XFCE4 桌面环境结合使用。 长期的极客桌面配置经验往往能引发关于效率、审美和 Linux 桌面生态的有趣讨论。
FreeBSD 上 frpc 的 RC 脚本
作者将跳板机从 Linux 迁移至 FreeBSD,并记录了为此编写 frpc 系统启动脚本的过程。 属于特定操作系统下的网络工具配置经验,受众相对垂直。
在 BottleRocket Linux 上排查 Kubelet 日志
作者在 AWS EKS 搭建节点组时遇到实例无法加入集群的问题,EC2 系统日志显示 Kubelet 启动失败。 文章记录了在 BottleRocket Linux 环境下排查和解决该问题的具体过程与经验。
Cockpit 创建虚拟机时权限被拒绝的解决方法
作者在使用 Cockpit 创建 Windows 虚拟机时遇到权限拒绝错误,记录了排查和解决过程。 这类具体的运维踩坑记录对使用 Cockpit 的用户有直接参考价值。
AWS IAM 信任链 和 EKS IRSA
《AWS IAM 信任链 和 EKS IRSA》最近读了一下AWS IAM的文档,此外,AWS 的 EKS 可以结合 IAM 一起使用,而且是推荐的用法,可以最小权限化,比如创建 NodeGroup 时创建一个 Node Role,默认情况下,EC2 和 里面运行的pod都会使用这个权限来运行,如果想要将权限绑定到 pod,还可以进一步细化权限,创建 pod 的时候绑定 role...