2026秋软件工程个人作业(第二次)——一箭又一箭
使用 Python Tkinter 与 AIGC 完成“一箭又一箭”飞剑主题小游戏,包含路径检测、五个可解关卡、碰撞动画、提示撤销、进度保存及完整测试记录。 ...
Java学习随笔:ArrayList 与 LinkedList 到底怎么选(2026-09-18)
学习集合的时候,ArrayList 和 LinkedList 是我最先接触到的两个 List 实现,也是面试里经常被拿来比较的一对“老朋友”。它们都实现了 List 接口,从使用上看差别不大,都可以按顺序存放元素、按索引访问、支持增删改查。可一旦追问底层结构,区别就非常明显:ArrayList 基于 ...
Python 并发怎么选?一篇讲清 threading、multiprocessing、asyncio 的边界
写过一些 Python 服务和脚本后我发现,很多人(包括早期的我)一遇到"要并发"就凭感觉开线程:请求慢了开线程、算得慢了也开线程,跑起来才发现,IO 任务确实快了,可 CPU 密集的任务开了一堆线程反而更慢。问题不在并发本身,而在没搞清楚三种模型各自解决什么问题。 这篇把 threading、mu ...
Python 异步与并发深度实战:事件循环、GIL 突围与性能真相
Python 异步与并发深度实战:事件循环、GIL 突围与性能真相 并发不是"用哪个库"的选择题,而是"理解机器与语言模型"后的工程判断题。 为什么 2026 年我们还在纠结并发 如果你写过几年 Python,大概率经历过这样的场景:接口一上量就卡死,加了几十行 threading 代码反而更慢,换 ...
TDengine OSS vs Doris 使用场景和功能对比
TDengine OSS 使用场景 IOT设备把时序数据(时间戳+测点值+设备标签)写入TDengine之后,主要做:时序查询、时间窗口聚合、实时告警、流式订阅、自动降采样等。核心模型是超级表Stable+子表(一个设备一张子表) 1.基础查询 -- 查询设备 d1001 在某个时间段的原始数据 S ...
绿舒环保长沙除甲醛实测:5家机构综合表现对比与避坑指南
长沙夏季炎热潮湿、冬季湿冷,新装修家庭除醛需求全年分布。本文从资质核验、施工工艺、质保体系、合同条款四个维度,对5家机构做横向实测对比,结合一线施工记录整理筛选要点,帮业主避开低价陷阱和口头承诺。 ...
高并发下的预约抢购系统:像挂号一样精准,排队机制设计全解
详解高并发预约抢购排队机制面试方案,基于 Redis ZSET+Lua 实现原子有序入队,搭配 RocketMQ 顺序消息异步处理,Redis 预扣库存 + 数据库乐观锁双层防超卖。网关令牌桶限流、WebSocket 推送排队进度,引入 AI 风控识别黄牛。剖析 ZSET 内存瓶颈、Redis 分片... ...
Java学习随笔:JVM 如何判断对象可以被回收(2026-09-17)
学习 Java 的过程中,很多同学会把注意力放在语法、集合和框架上,却容易忽略 JVM 内部究竟发生了什么。最近我在复习垃圾回收时,才对“对象什么时候会被回收”这个问题有了更清楚的认识。它并不像表面看起来那么简单:并不是某个变量不再使用,对象就会立刻消失,而是需要虚拟机通过一套相对严谨的机制去判断。 ...
ManimCE v0.21.0 发布:Typst 排版支持与 Cairo 渲染性能大幅提升
Manim Community Edition 发布了 v0.21.0 版本(2026 年 8 月 10 日),这是继 v0.20.1 之后的又一次功能型版本更新。 本次更新包含 2 项破坏性变更,以及多项值得关注的新特性和性能优化。 其中 Cairo 渲染器在动画密集场景下提速超过一倍,NumPy ...
定时任务上生产才会暴露的六个问题
给系统加定时任务,第一反应是找个 cron 库,写个表达式,跑起来。 能跑通。然后在某个凌晨,你会发现任务执行了两次,或者一次都没执行,或者上一次还没跑完下一次就开始了。 下面是几个跑到生产上才会暴露的问题。 一、多实例部署,任务会被执行 N 次 本地和单机上完全正常,一上负载均衡、服务扩到三个实例 ...
keycloak~通过用户ID直接置换token
Keycloak Token Exchange + Impersonation(运维配置) 门户 GET /kc/exchange-token 新流程: 用请求头里的 WSO2 应用 access_token 调 mcp-admin:POST /internal/wso2/token/authz-u ...
数据脱敏是怎么做的
详解企业全链路数据脱敏体系,对比掩码、哈希、加密等脱敏算法。基于 Spring AOP + 自定义注解 + 策略模式实现业务零侵入,结合 Spring Security 完成按角色动态脱敏;覆盖接口响应、Logback 日志、MyBatis 存储、大数据场景。附带核心源码,解决嵌套对象、Feign ... ...
如何使用 Bash 进行数据清洗
你可能经历过这样的场景:拿到一个 CSV,以为只是删几行、改几列,结果打开一看:空值、重复、负金额、Windows 换行符,全挤在一起。 别急着打开 Python,很多时候终端里的 Bash 已经能先帮你把这团乱麻冲开。 数据清洗不一定非要一开始就上重型武器(Python), 把 head、cut、 ...
2026 秋软件工程个人作业(第二次):利用 AIGC 完成"一箭又一箭"小游戏
2026 秋软件工程个人作业(第二次):利用 AIGC 完成"一箭又一箭"小游戏 项目 内容 这个作业属于哪个课程 2026-01软件工程与软件工程实践 这个作业要求在哪里 作业要求链接 这个作业的目标 使用 Python 和 AIGC 完成"一箭又一箭"小游戏 学号 102401415 GitHu ...
做临时邮箱要自己当 MX:用 go-smtp 实现一个收信服务端
做临时邮箱这类功能,第一个要想清楚的问题是:邮件怎么进来。 很多人第一反应是找个邮箱服务商,用 IMAP 定时去拉。这条路在临时邮箱场景下走不通——临时邮箱要求用户随时能开一个全新地址,你不可能给每个地址都去服务商那儿注册一个真邮箱。 所以只有一条路:自己当这个域名的 MX,自己收信。 也就是说,你 ...
Python 创建 Excel 下拉列表的两种方法
在 Excel 中设置下拉列表是规范数据录入的常用手段。手动操作虽然简单,但当需要为多个文件或大量单元格批量添加时,用 Python 自动化会更高效。Free Spire.XLS for Python 提供了两种直接的方式:一是通过 Values 属性直接指定选项列表,二是通过 DataRange ...
对加密的手机号如何进行模糊查询
手机号加密存储后如何实现模糊查询?核心矛盾是数据安全与查询性能的冲突。本文对比 5 套方案,详解大厂首选的前后缀哈希索引方案,附完整 Java 代码、表结构与 Mermaid 流程。同时包含面试模拟问答,讲解 3-gram 滑动窗口 + HMAC、布隆过滤器降噪等技术亮点,覆盖哈希碰撞、密钥轮换、分... ...
FastAPI 使用 session 认证
前言 FastAPI借助底层 Starlette 的 SessionMiddleware 可以很方便地实现基于签名 cookie 的session 认证。基本原理是将 Session 数据序列化并签名后存入客户端的 Cookie 中,服务器在后续请求中验证签名并还原数据,从而“记住”用户状态。 签名 ...
Python 常用统计图表实战指南
在日常工作和生活中,我们经常会遇到各种各样的数据:每月的外卖账单、每天的步数记录、工作时长与咖啡消耗量……如果只看一堆密密麻麻的数字表格,很容易让人眼花缭乱。 俗话说 “一图胜千言” 。 统计图表就像是数据的“显微镜”和“翻译官”,能帮我们快速发现隐藏在数据背后的规律、偏好甚至“异常”。 下面将结合 ...
如何自定义一个MyBatis插件
详解 MyBatis 自定义插件底层原理,基于 JDK 动态代理 + 责任链,可拦截四大核心对象。提供数据权限插件实战代码,亮点:@Order 控制插件执行顺序,借助 MetaObject 安全反射,使用 JSqlParser AST 语法树修改 SQL,规避字符串替换 BUG。附带慢 SQL 监控... ...


