她和她的猫
折腾 Hugo PaperMod 主题
8 months 2 weeks ago
从 Eureka 切到 PaperMod 主题快半年了,折腾了不少东西。记录一下改造过程。
去长鹿旅游休博园
11 months 3 weeks ago
六一那天,带安仔去了趟顺德的长鹿旅游休博园。
九点多到的,停车场空荡荡的,还以为人不多。进去的时候工作人员在喊免费拍照,反正也不用排队,就拍了几张。
1Password 自动化登录堡垒机
1 year ago
用 1Password SSH Agent 管理堡垒机的 SSH 密钥,本地不用存私钥。登录时 OTP 先试了 1Password CLI,太慢,改用 2fa 工具。
深入 Hyperf:Inject 注解是如何工作的?
1 year 10 months ago
本文详细介绍了 Hyperf 框架中 Inject 注解的工作原理,并深入剖析了代理类生成、类实例化过程的拦截机制以及属性值的自动注入操作。
译|理解容器镜像层
1 year 10 months ago
理解层的概念对于掌握容器非常重要。在这篇文章中,我将解释层是如何工作的以及其实现的基础。
使用 Rust 实现高性能预写日志(Write Ahead Log)
2 years ago
WAL 是 Write Ahead Log 的简称,通常叫做预写日志,是一种用于防止内存崩溃、保证数据不丢失的手段。本文介绍了 WAL 的基本概念和设计,并讲解了 WAL 读写操作的核心逻辑。
译|使用 Linux 命名空间隔离系统
2 years 4 months ago
本文概述了如何在 Linux 中使用命名空间,然后逐步解释了 Linux 命名空间。它将让你对 Linux 开发人员如何开始实施系统隔离(Docker 或 Linux 容器等工具架构中不可或缺的一部分)有一个基本概念。
深入 Hyperf:HTTP 服务是如何处理请求的?
2 years 5 months ago
本文详细介绍了 Hyperf 框架中 HTTP 服务处理请求的整个过程。
Linux 文件权限学习笔记
2 years 7 months ago
在 Linux 中,文件权限分为所有者、群组、其他人三种身份。
- 所有者:指拥有该文件/目录的用户,默认是创建该文件/目录的用户。
- 群组:指该文件/目录所属的群组,默认是创建该文件/目录的用户所在主要群组。群组是多个用户的集合,通过给群组赋予权限,从而使群组中的用户都拥有相应的权限。
- 其他人:如果一个用户既不是文件/目录的所有者,也不属于文件/目录所属的群组,那么该用户就是其他人。
在下面的例子中,可以看到当前用户是 her-cat,通过 ll 查看 /var/run/docker.sock 的文件属性。其中,第三列表示文件的所有者是 root;第四列表示文件所属的群组是的 docker;用户 her-cat 既不是所有者 root,又不在 docker 群组中,所以用户 her-cat 的对该文件来说身份是其他人。
译|了解 Bitcask:基于日志结构的 KV 存储引擎
2 years 11 months ago
Bitcask 是一种高效的嵌入式键值(KV)数据库,使用仅附加的日志文件和键目录来实现快速的点查找,具有低延迟的读写操作、高写入吞吐量、可预测的读写性能和快速的故障恢复能力。
还原 SM2 压缩公钥的几种方法
3 years ago
在 SM2 算法中,公钥的大小为 64 字节,算上前缀 04 的话就是 65 字节。公钥由椭圆曲线上的坐标点(x, y)组成,即每个坐标点都是 32 字节的大数。为了节省存储空间,通常会对公钥进行压缩后使用,也就是压缩公钥。
深入 Hyperf:HTTP 服务启动时发生了什么?
3 years 1 month ago
在这篇文章中,我会从启动命令开始,给你介绍下 Hyperf 的 HTTP 服务是如何完成初始化并启动的。
一次 Hyperf 注解失效问题分析
3 years 3 months ago
本文讲述了我排查「Hyperf 注解失效」问题的过程,整个排查过程看似一气呵成,但实际上要曲折得多,甚至一度觉得这是个玄学问题。
将博客迁移到又拍云
3 years 4 months ago
考虑到使用一台独立的服务器来部署静态博客多少有点浪费,所以决定将博客迁移到又拍云上,一是可以节省服务器成本;二是可以利用又拍云多节点 CDN 提升博客的访问速度。之前为了将博客图片托管到又拍云上,参加了又拍云的联盟活动,每个月可以免费获得 10GB 存储空间 + 15GB CDN 流量,对于我这个小博客是完全够用的。
译|PHP 7 新的 Hashtable 实现
3 years 7 months ago
大约三年前,我写了一篇分析 PHP 5 中数组的内存使用情况的文章。即将到来的 PHP 7 作为我工作的一部分,我重点关注于优化数据结构的大小以及内存分配上,为此重写了 Zend 引擎的大部分的内容。在这篇文章中,我将对新的 HashTable 实现进行概述,并说明为什么它比以前的实现更高效。
排查 ES 查询问题:深入了解 json_encode() 函数
4 years ago
本文介绍使用 Elasticsearch 进行批量查询数据时,如何处理数组去重问题,以及为什么去重后的数组在使用 json_encode() 函数时会变成 JSON 对象
浅析 Redlock 分布式锁实现原理
4 years 1 month ago
在本文中,先介绍了单实例 Redis 锁的一些问题以及解决方法,然后介绍了基于多实例的 Redlock 分布式锁的实现,Redlock 在一定程度上提高了 Redis 锁的可用性以及扩展性。
Yar 源码阅读笔记:RPC 服务端
4 years 5 months ago
Yar 服务端处理客户端请求的步骤:解析请求数据、执行被调用方法、返回响应结果。
Yar 源码阅读笔记:客户端的并行调用
4 years 5 months ago
主要介绍实现并行调用相关的数据结构,并通过 GDB 调试代码的方式展示并行调用运行的过程。
Checked
12 hours 27 minutes ago
她和她的猫的文章列表
她和她的猫 feed