Appearance
关于我
毕业于暨南大学,专注于 C++ 后端开发、Linux 系统编程和注重性能的工程实践。
喜欢从底层理解软件系统,包括算法、操作系统、网络、并发与调试。目标是构建可靠的后端基础设施,并持续深入理解生产环境中的系统如何运行。
核心项目
runnerd
一个正在开发中的 Linux 本地任务执行守护进程。
计划实现的能力:
- 通过 Unix Domain Socket 提交、查询与取消任务
- 使用
fork和execve安全执行程序 - 收集子进程的标准输出与标准错误
- 管理任务超时、取消与生命周期状态
- 使用
epoll实现非阻塞事件处理 - 通过追加式日志持久化已完成任务的信息
Linux 进程管理 epoll IPC 信号
cpp_logger
一个使用 C++17 实现的轻量级异步日志库。
- 使用线程安全阻塞队列,将日志生产与文件 I/O 解耦
- 支持多级日志与运行时日志级别过滤
- 记录时间戳、线程 ID、源文件和代码行号
- 支持控制台输出与异步文件输出
- 使用 CMake 构建为可复用的静态库
C++17 多线程 条件变量 CMake
cpp_thread_pool
一个支持任务提交和结果获取的固定大小 C++17 线程池。
- 通过共享任务队列管理工作线程
- 使用条件变量完成任务调度与优雅退出
- 实现类似 Future 的
Result结果抽象 - 支持类型擦除的返回值与异常传递
- 处理队列容量限制与资源的安全释放
C++17 线程池 泛型编程 并发编程
技术能力
编程语言
- C++11 / C++14 / C++17
- C
- Java
系统与后端
- Linux 系统编程与 POSIX API
- TCP/IP 与 Socket 网络编程
- 多线程编程
- 进程管理与进程间通信
select与epoll- HTTP 协议基础
工程工具
- CMake 与 Make
- GCC 与 Clang
- Git 与 GitHub
- GDB、Valgrind 与 AddressSanitizer
- Nginx
工程实践
这个网站由我独立搭建和维护,涉及:
- 使用 VitePress 生成基于 Markdown 的静态网站
- 使用 Nginx 提供静态文件服务并记录访问日志
- 在香港 Ubuntu 云服务器上完成部署与维护
- 使用 Let's Encrypt 配置 HTTPS 证书
- 使用 Shell 脚本完成网站构建与部署
- 使用 Git 和 GitHub 进行源码管理
当前关注方向
我目前正在:
- 开发 Linux 任务执行守护进程
runnerd - 深入学习 C++ 并发与内存管理
- 练习 Linux 网络编程与
epoll - 准备 C++ 后端开发岗位面试
学习方向
正在学习的书籍与主题:
- Effective Modern C++
- C++ Concurrency in Action
- Advanced Programming in the UNIX Environment
- TCP/IP Network Programming
- Linux 进程、信号与文件 I/O 编程
- 网络服务器与并发编程
联系方式
- GitHub: qxf-72
- 个人网站: xiaofeng-qiu.me
- 邮箱:
xiaofeng_qiu@qq.com