TCP 与 UDP:理解差异,比记结论更重要
TCP 负责重传、顺序和流量控制,但不保留应用消息边界。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 TCP 提供有序可靠的字节流TCP 负责重传、顺序和流量控制,但不保留应用消息边界。应用仍需要定义协议格式。连接建立与拥塞控制会影响实际体验,单看 ping 延迟不足以预测下载速度。 UDP 把更多责任交给上层UDP 保留数据报边界,没有内建可靠传输保证。QUIC 等协议在 UDP 上实现自己的可靠性与拥塞控制,所以 UDP 并不等于不可靠应用,也不意味着天然更快。 日常使用的小结测试防火墙和网络时要分别考虑 TCP 与 UDP。TCP 端口握手成功,不能证明同端口的 UDP 服务也可用。
用 RSS 把阅读从推荐算法里拿回来
RSS 阅读器按来源收集更新,适合博客、项目公告和长文。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 订阅的是更新,不是信息流RSS 阅读器按来源收集更新,适合博客、项目公告和长文。它让读者主动选择信息来源,也方便保留已读状态,不必每次打开多个网站检查。 从少量来源开始先添加十个真正愿意阅读的站点,按主题简单分类。对长期不再阅读的来源及时退订。不要因为订阅方便就无限增加数量,否则阅读器会变成另一个待处理清单。 日常使用的小结网站是否提供全文、更新频率与缓存策略,会影响阅读体验。RSS 是补充阅读的方法,不需要替代所有社交平台或搜索工具。
Markdown 笔记:少一点格式,多一点结构
一级标题描述主题,二级标题划分问题,列表记录并列项。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 标题应该表达关系一级标题描述主题,二级标题划分问题,列表记录并列项。不要用大量加粗代替层级。结构清楚的文档,即使不加载任何主题也容易理解。 让资料以后还能找到为笔记保留明确文件名、日期和少量标签,引用外部资料时记录来源。代码块写语言,命令旁注明环境与用途,比截图更便于检索和复制。 日常使用的小结Markdown 不适合所有复杂排版,但它的可移植性很适合长期个人记录。先把内容写明白,再决定是否需要更复杂的笔记系统。
PostgreSQL 备份:文件在,不代表一定能恢复
小型站点可以从 pg_dump 开始,保留数据库逻辑备份。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 先选择适合规模的方法小型站点可以从 pg_dump 开始,保留数据库逻辑备份。角色与权限可能还需要单独导出。更大的数据库可能需要物理备份和 WAL 归档,并围绕恢复时间目标做设计。 恢复测试要在独立位置进行选择匹配的客户端版本,记录扩展、编码与权限要求。在新数据库中恢复后,检查关键表、约束与应用读写。只检查备份文件大小,无法发现扩展缺失或权限不完整。 日常使用的小结备份应配合保留策略和异地副本。把数据库密码直接写进定时任务命令行会增加暴露面,可采用受限的凭据文件或运行环境。
磁盘空间快满了,怎样找到真正占用空间的文件
df -h 检查文件系统容量,df -i 检查 inode。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 容量与 inode 都要看df -h 检查文件系统容量,df -i 检查 inode。大量小文件可能耗尽 inode,即使磁盘仍有空余,也无法创建新文件。排查时先确定哪个挂载点异常,避免跨磁盘统计造成误判。 从目录逐层缩小范围使用 du -xhd1 查看当前文件系统中一级目录的大小,再进入占用较大的目录。删除前确认文件用途。日志轮转、容器镜像、缓存和数据库文件需要采用各自的维护方式,不能看到体积大就直接删。 日常使用的小结文件已删但空间没释放时,可能仍被进程持有。可以检查已删除却打开的文件,再选择重载或重启对应服务。先保存必要证据,避免边排查边破坏现场。
IPv6 能打开网站,却连不上某个服务?一份检查清单
IPv6 是否可用,不是一个简单的开关。客户端、路由器、运营商、服务器和应用都要支持,任何一环缺失都可能造成“有地址但连不上”。 有 IPv6 地址,不等于有公网连接链路本地地址通常以 fe80 开头,只用于本地链路;它不能证明公网 IPv6 已经连通。应同时检查默认路由,并实际访问一个支持 IPv6 的站点。 分别测试 IPv4 和 IPv6使用 curl -4 -I https://example.com 与 curl -6 -I https://example.com 可以区分两条路径。不要只用浏览器判断,因为浏览器可能自动回退到 IPv4,让故障暂时不可见。 检查服务监听与防火墙服务器有 IPv6 地址,不代表应用监听 IPv6。检查 ss -lntp 中的地址与端口,同时查看云平台和系统的 IPv6 入站规则。IPv4 的放行规则不一定覆盖 IPv6。 地址与端口的书写URL 中直接使用 IPv6 地址时,需要方括号消除冒号歧义,例如 https://[2001:db8::1]:8443/。这里的地址属于文档示例网段,不能拿来连接真实服务。 AAAA 记录要与可用服...
博客图片怎样压缩,才能兼顾清晰度与速度
一张只显示在文章卡片里的图片,没有必要保留相机原始分辨率。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 先缩尺寸,再谈压缩率一张只显示在文章卡片里的图片,没有必要保留相机原始分辨率。先根据实际显示尺寸生成合适版本,再选择编码格式,往往比一味降低质量参数更有效。 不同图片适合不同格式摄影图片可比较 WebP、AVIF 与 JPEG;图标和简单线条更适合 SVG,但 SVG 文件也需要可信来源。不要把文字截图压得过低,否则文件虽小却无法阅读。 日常使用的小结首屏大图应控制体积,下面的文章封面可以延迟加载。最终用浏览器实际加载结果检查,而不是只凭编辑器里的预览判断。
Docker 数据卷与目录挂载,应该怎样选
bind mount 把明确的宿主机路径提供给容器,适合需要人工编辑的配置和静态文件。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 目录挂载便于观察bind mount 把明确的宿主机路径提供给容器,适合需要人工编辑的配置和静态文件。要注意 UID、GID 与访问权限,并尽量把只读配置设置为只读挂载。 数据卷更适合交给 Docker 管理named volume 让部署文件通过卷名引用数据,减少对宿主机目录布局的依赖。但它同样需要备份,删除容器也不代表数据自动得到保护。执行清理命令前,应先确认有哪些服务仍在引用卷。 日常使用的小结无论采用哪种方式,先画清楚数据在哪里、谁负责写入、如何恢复。容器镜像可以重新下载,业务数据通常不能。
个人项目也值得保留清楚的 Git 提交
把配置修复、样式修改和内容更新分开提交,回头查看时更容易理解变化。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 一次提交回答一个问题把配置修复、样式修改和内容更新分开提交,回头查看时更容易理解变化。提交信息应描述具体结果,而不只是写 update 或 fix。 提交前看一遍差异git diff 能发现意外格式化、敏感文件和漏改的配置。生成目录、缓存与本地凭据通常不应进入版本控制。忽略文件只能阻止未跟踪文件,已经提交的内容需要另行处理。 日常使用的小结Git 保存历史,但不能替代异地备份。为重要仓库设置独立远端,并定期确认本地提交真的已推送。
反向代理配置里,几个容易忽略的请求头
Host 可能用于虚拟主机选择和应用的来源校验。本文整理两个容易忽略的环节,作为日常使用时的检查参考。 Host 与上游路由有关Host 可能用于虚拟主机选择和应用的来源校验。有些应用需要公网域名,有些本机接口要求上游地址,应依据应用文档配置。不能把同一个请求头模板套给所有服务。 转发信息需要信任边界X-Forwarded-For 与 X-Forwarded-Proto 用来传递原始访问信息,但上游应只信任已知代理。直接接受客户端伪造的转发头,会让来源判断和日志失真。 日常使用的小结WebSocket 和流式响应还有额外的连接、缓冲与超时要求。修改配置后先做语法校验,再用真实请求验证,而不仅是看重载命令成功。