刷新
你的开发服务器在说谎-热重载与热重启的关键区别

博主头像 GitHub 主页 你的开发服务器在说谎:热重载与热重启的关键区别 作为开发者,我们都迷恋那种“心流”状态。当你全神贯注,代码从指尖流淌而出,每一次保存,终端里的服务就自动重启,浏览器一刷新,新的变更就立刻呈现在眼前。这种即时的反馈循环,是现代 Web 开发中最令人愉悦的体验之一。✨ ...

安全不是一个功能-而是一个地基

博主头像 GitHub 主页 安全不是一个功能,而是一个地基 ️ 我入行大概十年的时候,经历过一次让我至今心有余悸的安全事件。我们当时在为一个金融客户做一套在线交易系统。一个年轻的程序员,在写一个查询历史订单的接口时,为了图方便,直接用字符串拼接了 SQL 语句。是的,你没看错,就是那种最经典的、教科 ...

你的测试又慢又不可靠-因为你测错了东西

博主头像 GitHub 主页 你的测试又慢又不可靠?因为你测错了东西!➡️✅ “我们应该写更多的测试。” 在每一个技术会议上,这句话都会被反复提起,就像一句神圣的咒语。人人都点头称是,人人都知道这是“正确”的。但一回到座位上,很多人脸上的表情就变得痛苦起来。 为什么?因为在很多项目中,写测试是一件苦差 ...

别再猜了-开始测量吧-一份实用的Web性能指南

博主头像 GitHub 主页 别再猜了,开始测量吧:一份实用的 Web 性能指南 又是一年“黑五”,凌晨三点,我的手机像疯了一样尖叫起来。 不是闹钟,是监控警报。我们的主打电商服务,那个我们花了半年心血构建的系统,在流量洪峰面前,像纸糊的一样,彻底崩溃了。CPU 100%,内存溢出,日志里充满了各种超时的 ...

你的中间件一团糟-是时候修复它了-️

博主头像 GitHub 主页 中间件(Middleware)。这是 Web 开发中最强大的概念之一,也是最容易被滥用的概念之一。理论上,这是一个美妙的想法:一个由可复用组件构成的管道,可以检查、转换或终止请求。但在实践中,在我多年来使用过的许多框架中,它变成了一团乱麻,函数调用函数,控制流难以追踪,错误处理简 ...

超越-env-一份成熟的应用程序配置指南

博主头像 GitHub 主页 超越.env:一份成熟的应用程序配置指南 让我给你讲个鬼故事。 几年前,我们团队的一个新来的小伙子,在一次紧急的线上热修复中,不小心把一个配置项搞错了。他本该把数据库地址指向生产环境的只读副本,结果,他忘了在生产服务器上更新那个小小的.env文件。结果呢?线上的服务,连 ...

文件不只是数据-一份稳健的文件处理指南

博主头像 GitHub 主页 文件不只是数据:一份稳健的文件处理指南 我永远忘不了那个下午。我们刚刚上线了一个允许用户上传个人头像的新功能。一切看起来都很完美。直到一个用户,出于无心或有意,尝试上传了一个他电脑上 2GB 大小的电影文件。 服务器的内存监控瞬间飙红,CPU 使用率直冲 100%, ...

你的项目一团糟-不是你的错-是框架的锅

博主头像 GitHub 主页 你的项目一团糟?不是你的错,是框架的“锅”!➡️️ 每个程序员都经历过那个瞬间。你加入一个新项目,或者时隔半年重新打开一个自己写的项目,然后,你感到了那种熟悉的、令人窒息的混乱。️ utils文件夹里塞了上百个无组织的函数,一个巨大的services.js文件里混合了 ...

你的部署流程已然落伍-热重启的失传艺术

博主头像 GitHub 主页 你的部署流程已然落伍:热重启的失传艺术 我依然清晰地记得那个周五的午夜。我,一个本该在家享受周末的四十多岁男人,却身处冰冷的机房,耳边是服务器风扇的嗡嗡声,眼前是终端上不断滚动的错误日志。一次本应“简单”的版本更新,变成了一场灾难。服务起不来,回滚脚本失败,电话那头是客户愤怒的咆 ...

9.8 hashlib模块

博主头像 目录9.8 hashlib模块1.hashlib.md5()(1)特性1:长度一样(2)特性2: hash加密的字符串一样,则哈希结果一样(3)特性3:如果使用同一个哈希字符编码表,不断的哈希结果会累加。(4)小练习2. hmac.new()3.uuid模块补充 9.8 hashlib模块 思考:为 ...

从EXTI实现看Embassy: 异步Rust嵌入式框架

博主头像 本文以STM32的EXTI驱动为例,深入解析了异步嵌入式Rust框架Embassy的设计理念与实现。文章探讨了Embassy如何通过精巧的类型系统确保硬件操作的编译时安全,并详细揭示了其基于Future和Waker的异步中断处理机制。 ...

LINUX中修改MYSQL的密码

修改my.cnf [root@daihatestdb12178 ~]# vi /etc/my.cnf 在[mysqld]下增加 skip-grant-tables # For advice on how to change settings please see # http://dev.mysql ...

机械设计软件:提升设计效率的 “得力助手”​

博主头像 随着数字化技术发展,机械设计软件已成为设计流程中不可或缺的工具,能实现从二维绘图、三维建模到性能仿真的全流程辅助,大幅提升设计效率与精度。常用的机械设计软件可分为二维绘图软件、三维建模软件与有限元分析软件三类,需根据设计需求合理选用。​ 二维绘图软件以 AutoCAD 为代表,是机械设计的基础工具, ...

pg进程和内存体系架构

博主头像 pg进程和内存体系架构 backend 客户发起的会话进程 后台进程 进程 描述 background writer 在这个过程中,共享缓冲池中的脏页会被逐步地定期写入持久存储(例如,HDD、SSD)。 checkpointer 负责执行checkpoint。 autovacuum launcher ...

机械密封:防止流体泄漏的 “关键防线”​

博主头像 机械密封是旋转设备(如泵、压缩机、反应釜)中防止流体介质泄漏的核心部件,相较于传统的填料密封,具有泄漏量小、寿命长、功耗低等优势。设计与选用机械密封时,需重点关注密封副材料搭配、密封腔结构设计及安装维护要点。​ 密封副材料的选择需适配介质特性与工作工况。对于水、油等普通无腐蚀介质,碳化硅与石墨是常用 ...

完整教程:构建单页应用:React Router v6 核心概念与实战

构建单页应用:React Router v6 核心概念与实战作者:码力无边各位React航海家,欢迎登上《React奇妙之旅》的第十四艘航船!我是你们的船长码力无边。至今为止,我们构建的应用都还停留在“一个页面”的阶段。我们已经能在这个页面上做出非常复杂的交互和逻辑,但一个真正的Web应用,通常是由 ...

Linux中文件描述符的可重用机制

博主头像 目录核心机制:文件描述符是可重用的举例说明为什么会有“只增不减”的错觉?重要规则和例外总结 核心机制:文件描述符是可重用的 Linux 内核会为每个进程维护一个文件描述符表。当进程打开一个新文件(或 socket 等)时,内核会在这个表中寻找最小的、未被使用的文件描述符编号,并将其分配给这次新的打开 ...

液压系统设计:机械动力传递的 “柔性方案”​

博主头像 液压系统借助液体压力能实现动力传递,具有功率密度大、动作平稳、易于实现无级调速等优势,在工程机械、机床、船舶等领域应用广泛。设计一套可靠的液压系统,需从工作压力确定、核心元件选型、液压油选择及系统防护四个方面入手。​ 工作压力的确定是液压系统设计的基础,需根据负载大小精确计算。例如,在液压千斤顶设计 ...

PostgreSQL 开启归档

博主头像 PostgreSQL 开启归档 修改postgresql.conf archive_mode =on %p = path of file to archive %f = file name only archive_command ='cp %p /u01/pgsql/archive/pg_%f' ...

<1···252627···200>