Mac OrbStack 部署 openEuler:完美兼容旧 iptables 老脚本解决方案 前言 日常在 Mac 上通过 OrbStack 搭建 openEuler 欧拉环境做开发、测试、部署时,会遇到一个高频问题:官方精简镜像默认无 iptables 工具。 很多老旧运维脚本、Docker 部署、K8s 初始化、网络转发脚本都重度依赖 iptables 命令,直接运行会报错: exec: 2026-08-18 问题记录
IDEA Spring 调试器 getResolvableType 异常原因分析 本文档记录业务服务在 IDEA 中启动时抛出 NoSuchMethodException: AnnotatedGenericBeanDefinition.getResolvableType() 的根因与处置方案,供后续遇到同类问题速查。 一、背景 本项目采用 Spring Cloud 微服务架构,技 2026-08-07 问题记录
MacOS清理Conda 你可以根据需要选择对应的方法: 方案 A:瘦身清理(释放磁盘空间) 如果你的磁盘空间被 Conda 占满,可以通过以下命令快速清理: 1. 清理缓存与未使用的包 在终端(Terminal)中运行内置的清理命令,这通常能释放数 GB 空间: 2026-08-04 问题记录
操作系统底层律动:ABI 在软件系统的繁星之下,无论是高层的 Python/Java 字节码,还是中层的 C++/Rust/Go 高级代码,最终都必须降维映射为一行行裸露的机器指令。在这片由寄存器、内存地址和堆栈构成的代码旷野中,操作系统如何理解函数的入参?如何接收函数的返回值?如何保证栈帧在崩溃时不至失控? 这些在二进制层 2026-08-04 个人思考
为什么会出现大端序和小端序? 💡 1. 源头:硬件工程师与人的思考差异 当你写下数字 1234 时: 人类的视角(大端序思想):“高位在前”。最左边的 1 是千位(最重要),最右边的 4 是个位。我们习惯从左往右读写,所以很自然地想把 1 放在内存的最前面(低地址)。 C 2026-08-04 个人思考
WebAssembly 与 Web Worker 性能调优 在前端技术飞速发展的今天,我们正见层出不穷的复杂应用被搬进浏览器——从在线视频剪辑、3D 渲染,到离线运行的大语言模型(LLM)与计算密集型 AI 推理。然而,许多开发者在尝试将 C++/Rust 编译为 WebAssembly (WASM) 并放入 Web Worker 运行时,常常会遭遇性能瓶颈 2026-07-30 Web
软件项目纬度视角 在传统的软件工程中,当我们谈论一个项目时,习惯性地会使用组织规模(个人/部门/企业)或技术栈(前端/后端/全栈)来进行归类。然而,随着企业微服务化、云原生架构以及 AI 辅助编程(AI Agent)的普及,这种单一的二元分类法已经无法支撑复杂的研发治理与精细化的团队分工。 要想真正搞懂一个软件项目的 2026-07-28 个人思考
无侧边效应 TL;DR / 核心结论 (The "Bottom Line") 核心思想:无副作用(Side Effect Free)状态管理主张将“状态计算”与“外部交互”彻底解耦。状态更新不再是直接修改,而是通过纯函数生成新快照:NewState = PureFunction(OldState, Action 2026-07-27 个人思考
JVM内存布局 JVM 进程总内存空间 (OS Physical RAM) ├── 1. Java 堆内存区 (Java Heap) 【线程共享 | GC核心管理】 │ ├── 年轻代 (Young Generation) │ │ ├── Eden 区 │ │ ├── Survivor 0 (S 2026-07-24 Java
塔珀自指公式 最近无意中看到一个公式,觉得很神奇故有此文~ 官网:Tupper's Formula Tools 利用AI解析了一下这个公式,它的本质就是一个位图解码器。这个位图(也就是二值图像)大小为 106∗17106 * 17,共1802个像素点。而十进制的k转换成二进制正好是1802位,每一位对应一个格子。 2026-07-20 个人思考