- 博客(1596)
- 收藏
- 关注
原创 你的 pickle 反序列化为何“找不到家”?——Python 自定义对象序列化的类定义依赖与跨环境陷阱
Python pickle 序列化依赖类定义的可导入性,反序列化时需在环境中重新加载类。常见问题包括:类定义在 __main__ 模块导致跨脚本失败、模块/类名变更引发 ModuleNotFoundError、__init__ 不被调用致属性缺失、以及无法序列化 lambda 等局部对象。根本原因在于 pickle 仅保存类引用而非代码,要求环境一致。解决方案包括:将类移至独立模块、使用 __getstate__/__setstate__ 处理状态迁移、避免 __main__ 定义,并显式指定协议版本以保障
2026-10-13 09:30:00
14
原创 【八个月网安课程】第十周·周四:暴力破解防御机制与账户锁定策略
今天将完成视角切换——从爆破攻击者转为防御设计者。亲手实现账户锁定、登录延迟、IP 限制等防御机制,并对比有防御与无防御时暴力破解的效果差异,彻底理解纵深防御在身份认证中的落地方式。
2026-10-13 08:30:00
75
原创 【基于 Swoole+Hyperf 的微服务实战】第十周 · 周四: 完善监控:Prometheus 采集秒杀指标,Grafana 实时大屏
本周聚焦秒杀系统监控体系建设,基于Swoole+Hyperf架构,通过hyperf/metric实现自定义指标埋点:使用Counter统计请求总量与成功率,Gauge实时反映库存剩余,Histogram记录接口延迟。配置Prometheus抓取指标,结合Grafana构建全屏自动刷新的实时大屏,可视化展示QPS、P99延迟、库存消耗曲线,并设置库存低位预警(<10%变红),实现“作战指挥室”级监控,保障高并发场景下系统可观测性与快速响应能力。
2026-10-13 07:30:00
143
原创 【三个月 AI Agent 实战学习】Day 36 :记忆机制入门 —— 短期记忆 vs 长期记忆
本文介绍记忆机制在AI Agent中的核心作用,区分短期记忆(会话上下文)与长期记忆(跨会话持久化),并设计“带记忆的客服 Agent”架构。通过结合消息列表、向量数据库(Chroma)与结构化存储(SQLite),实现记忆的存储、检索、更新与遗忘。关键创新在于将人类记忆模型映射至Agent系统:工作记忆对应短期上下文,情景/语义记忆分别由对话摘要与用户画像承载。技术上采用LangChain组件,构建可扩展的记忆管理器,支持个性化服务与连贯交互,为智能代理提供持续学习与记忆能力。
2026-10-13 06:30:00
218
原创 你的内存文件为何“留不住”数据?——Python io.StringIO 与 io.BytesIO 的奇妙世界与暗坑指南
Python的io.StringIO与io.BytesIO在内存中模拟文件,便于临时数据处理,但常因指针位置、类型混淆、关闭后操作等陷阱导致“写入无读”或报错。核心问题包括:写入后需seek(0)才能读取;文本与二进制流不可混用;关闭后无法调用getvalue();大文件使用会耗尽内存;with块外无法访问。掌握指针控制、类型匹配与生命周期管理,方能安全高效使用。
2026-10-12 09:30:00
356
原创 【八个月网安课程】第十周·周三:验证码绕过基础——复用、置空与本地靶场实践
验证码(CAPTCHA)本应是防御自动化攻击的最后一道防线,但错误的实现反而会成为渗透者的突破口。今天你将深入理解验证码的生成与验证机制,掌握复用、置空等经典绕过手法,并在本地靶场中亲手验证这些缺陷。
2026-10-12 08:30:00
244
原创 【基于 Swoole+Hyperf 的微服务实战】第十周·周三:全链路压测与调优
今日完成电商核心系统全链路压测与调优,通过 wrk/JMeter 对秒杀、下单、商品聚合接口施压,结合 Jaeger 链路追踪、Grafana 监控与慢查询日志,定位瓶颈并实施索引优化、连接池预热、缓存策略改进等调优措施。优化后,秒杀接口 QPS 达 5800,P99 延迟降至 35ms,系统性能显著提升,成功输出包含前后对比的压测报告,验证了系统承载能力,为高并发场景奠定坚实基础。
2026-10-12 07:30:00
388
原创 【三个月 AI Agent 实战学习】 Day 35:阶段总结 —— 写一篇 ReAct 技术博客
本文系统梳理ReAct范式核心——推理与行动的协同,对比CoT与Act-only,详解Thought→Action→Observation循环机制。通过天气查询案例演示工作流程,展示LangChain中@tool与AgentExecutor的简化实现,并结合网络爬虫实战说明应用价值。总结调试技巧与常见陷阱,强调写作是深化理解的关键。最终为进入记忆与多智能体阶段奠定基础。
2026-10-12 06:30:00
445
原创 你的路径操作还在用字符串拼接吗?——Python pathlib 面向对象路径操作的革命与暗坑
本文深入剖析 Python pathlib 的核心优势与常见陷阱:它以面向对象方式简化路径操作,支持 / 拼接、.glob() 模式匹配等现代语法,显著提升代码可读性。然而,开发者易陷入误区——如误用 + 拼接路径、混淆 PurePath 与 Path 的 I/O 能力、忽视 .resolve() 在不同版本的行为差异、忽略跨平台大小写敏感性及默认编码问题。文章强调正确使用 Path、显式指定编码、合理选择 glob 参数,并揭示其类层次结构与底层原理,助你规避暗坑,真正掌握这一现代路径操作利器。
2026-10-11 09:30:00
166
原创 【基于 Swoole+Hyperf 的微服务实战】第十周·周二:秒杀系统的“城墙”——网关层令牌桶限流 + 服务层分布式锁
本文基于 Swoole+Hyperf 构建秒杀系统,通过网关层令牌桶限流(500 QPS)与服务层 Redis 分布式锁双重防护,实现高并发下的系统稳定与数据正确。令牌桶在网关层拦截超限请求,防止系统过载;服务层锁以用户+商品为粒度,确保一人一单、防重复提交。结合 JMeter 5000 并发压测验证,系统在限流与锁机制下成功避免超卖,错误率趋近于零,充分保障了高可用性与业务一致性。
2026-10-11 08:30:00
416
原创 【八个月网安课程】第十周·周二:Burp 宏与 Session 处理——维持登录状态爆破含 Token 表单
在Burp Suite中,通过宏(Macro)自动获取动态CSRF Token与有效Cookie,结合会话处理规则实现自动化爆破。关键步骤:录制GET登录页请求,提取user_token正则表达式;配置会话规则,调用宏并更新请求参数;Intruder中仅标记用户名/密码为载荷,线程设为1,启用延迟,确保每次请求前刷新会话。可成功爆破DVWA High级别登录,验证防御机制局限性。
2026-10-11 08:30:00
435
原创 【三个月 AI Agent 实战学习】Day 34 :Routing(路由)—— 让 Agent 学会“分流”
今日学习路由(Routing)技术,通过意图分类将用户请求分发至专用子链:闲聊、数学计算或天气查询。使用LangChain的RunnableBranch实现高效路由,结合LLM分类与Embedding相似度匹配,提升AI系统精准性与可扩展性,为多智能体协作奠定基础。
2026-10-11 06:30:00
406
原创 你的文件名匹配为何“漏网”?——Python fnmatch 模块的隐形规则与精准匹配术
本文深入剖析Python fnmatch模块的匹配机制,揭示其在跨平台、大小写敏感性、通配符规则(如*匹配路径分隔符)及字符集处理中的常见陷阱。指出fnmatch因继承操作系统规范(如Windows自动转小写)导致行为不一致,强调应使用fnmatchcase实现跨平台一致匹配,并提醒开发者注意模式转义、路径处理与glob的本质区别,避免“漏网”或误匹配。
2026-10-10 09:30:00
207
原创 【八个月网安课程】第十周·周一:Burp Intruder 攻击类型详解——Sniper、Battering ram、Pitchfork、Cluster bomb
本周深入掌握Burp Intruder四种攻击类型:Sniper(单参数逐个测试)、Battering ram(多位置同值替换)、Pitchfork(一一对应同步测试)和Cluster bomb(笛卡尔积全面爆破)。通过DVWA登录爆破实战,对比不同类型的请求数与适用场景,理解其核心差异。重点掌握攻击类型选择对效率与结果的影响,避免误用导致漏报或请求爆炸。最终实现精准配置、高效渗透。
2026-10-10 08:30:00
497
原创 【基于 Swoole+Hyperf 的微服务实战】第十周·周一:秒杀功能--高并发场景专项深度优化
本文基于 Swoole+Hyperf 构建高并发秒杀系统,通过独立接口、Redis Lua 原子扣减与缓存预热,实现毫秒级响应。秒杀成功后异步触发 Saga 事务,保障最终一致性。结合 JMeter 压测验证,5000+ 并发下库存准确无超卖,显著提升系统吞吐与稳定性。
2026-10-10 07:30:00
303
原创 【三个月 AI Agent 实战学习】Day 33:LangSmith 调试与监控 —— 可视化追踪 Agent 的每一步
今天我们将学习 LangSmith——LangChain 官方的调试与监控平台。它能自动记录每一次 LLM 调用、工具执行和 Agent 步骤,并以可视化面板呈现,让你像使用 Chrome DevTools 一样调试 Agent。如果无法访问 LangSmith,我们也会提供 LangFuse 作为备选方案。
2026-10-10 06:30:00
379
原创 Windows 11 下 Docker 的镜像/容器/卷数据 和 WSL 发行版存储位置修改到非系统盘
在 Windows 11 下使用 WSL2 后端时,Docker Desktop 的镜像/容器/卷数据与自定义 WSL 发行版(如 Ubuntu)独立存储。需分别迁移:通过 Docker Desktop GUI 设置新磁盘路径可安全迁移数据;自定义发行版可用 wsl --move 或导出导入方式转移;建议目标盘为 NTFS 格式、优先 SSD,迁移前关闭所有 WSL 并备份重要数据。最终验证位置与配置是否正确。
2026-10-09 09:38:42
128
原创 Win11 Docker优化加固
在 Windows 11 上使用 Docker Desktop + WSL2 时,应遵循最小权限、最小镜像、最小暴露等原则。通过更新系统与工具、合理配置 WSL2 资源、优化文件路径与构建流程提升性能;安全方面,启用 ECI、限制容器权限、禁用高危选项、使用可信镜像并扫描漏洞,结合 secrets 管理、自定义网络与日志审计,实现全面加固。
2026-10-09 09:30:57
144
原创 你的文件搜索为何总“漏”文件?——Python glob 模块模式匹配的暗坑与完全征服手册
Python glob 模块虽便捷,却常因隐藏文件忽略、路径分隔符差异、递归匹配不生效、返回顺序不定及特殊字符未转义等陷阱导致“漏文件”。其行为受操作系统与 Unix shell 规则影响,** 需配 recursive=True,* 不匹配以.开头的文件,且结果顺序无保证。正确用法包括:使用 glob.escape() 转义特殊字符,显式排序,优先选用 pathlib.Path 的 glob/rglob 方法,或用 iglob 降低内存开销,确保跨平台一致性与精确匹配。
2026-10-09 09:30:00
527
原创 【八个月网安课程】第九周·周六:工具综合竞赛——限时完成目标信息收集与至少一个漏洞发现
这是 BurpSuite 与信息收集阶段的一次大型综合实战。你需要在限定时间内,对目标靶机完成从信息收集到弱口令爆破的完整渗透测试入口操作。今天的成绩将直接反映你这九天工具学习的扎实程度。
2026-10-09 08:30:00
461
原创 【基于 Swoole+Hyperf 的微服务实战】第九周·周六:全面复盘、压力测试、代码评审和文档沉淀
经过五天开发,团队基于Swoole+Hyperf构建了完整的电商微服务系统,涵盖用户、商品、库存、订单、支付等核心服务,并集成服务发现、配置中心、链路追踪与分布式事务。今日聚焦复盘:通过全链路压力测试(秒杀/下单场景)识别性能瓶颈,优化Redis锁、数据库连接池与RabbitMQ吞吐;开展代码评审,强化Saga协调器、库存锁与网关鉴权的健壮性;完成架构图、压测报告、API文档等交付物沉淀。最终形成可复现部署方案,为后续引入K8s、gRPC与混沌工程奠定基础,实现从功能实现到工程化落地的跨越。
2026-10-09 07:30:00
130
原创 【三个月 AI Agent 实战学习】Day 32:Context Window 危机处理 —— 让 Agent 永不爆 Token
摘要(148字): 本文解决多轮对话中上下文窗口超限问题。通过 tiktoken 精确计算 Token,实现滑动窗口、摘要压缩与混合策略三种历史管理方法。混合策略优先保留近期完整对话,对早期内容生成摘要,兼顾信息保留与性能。最终集成至聊天机器人,确保在 64K Token 限制下稳定运行,避免爆 Token 错误,提升 Agent 长期对话能力。
2026-10-09 06:30:00
500
原创 删不掉的文件夹与误删的文件——Python os.remove() 与 os.rmdir() 的边界陷阱与安全删除术
本文深入剖析Python中os.remove()与os.rmdir()的使用边界,揭示其仅能删除文件和空目录的严格限制。通过多个典型错误场景,如误删目录、非空目录删除失败、竞态条件等,揭示了因混淆函数用途或忽略异常导致的“删不掉”“删错”问题。文章强调:删除文件用os.remove(),空目录用os.rmdir(),非空目录必须使用shutil.rmtree()。并提出安全删除黄金法则——直接删除并捕获FileNotFoundError,避免检查-删除竞态,确保跨平台兼容性与可靠性。
2026-10-08 09:30:00
487
原创 【八个月网安课程】第九周·周五:信息收集流程综合——域名→IP→端口→目录→指纹→旁站
本文系统梳理了从域名到旁站的标准化攻击面探测流水线:域名→IP→端口→目录→指纹→旁站。通过实战演练,掌握nslookup、nmap、dirsearch、whatweb等工具,实现真实IP识别、端口服务探测、目录扫描、技术栈指纹及旁站拓展,最终输出结构化信息收集报告,为漏洞利用奠定可靠基础。强调授权范围与合规操作,提升渗透测试的系统性与专业性。
2026-10-08 08:30:00
367
原创 【基于 Swoole+Hyperf 的微服务实战】第九周·周五: 集成分布式事务 Saga 与延迟队列
本周聚焦集成分布式事务Saga与延迟队列,实现电商下单全流程一致性保障。通过订单服务协调创建订单、冻结库存、支付扣款三步正向流程,并在失败时触发补偿(解冻库存、取消订单)。利用RabbitMQ延迟队列(TTL+DLX)实现30分钟未支付自动取消,过期消息路由至取消消费者处理。支付服务仅作模拟,库存服务通过AMQP消费命令完成库存操作。网关接口改为异步返回saga_id,支持最终一致性验证。完整覆盖成功、失败、超时三种场景,显著提升系统容错能力。
2026-10-08 07:30:00
144
原创 【三个月 AI Agent 实战学习】Day 31:带记忆的聊天机器人 —— 结合 RAG 与 Memory
本文介绍了如何结合RAG与对话记忆,构建一个具备个性化记忆的智能聊天机器人——“书童机器人”。通过LangChain实现向量存储(Chroma)、知识检索、对话历史管理(ConversationBufferMemory)及提示词模板组合,使机器人能记住用户姓名、喜好,并基于本地文档准确回答问题。采用手动链式调用方式,清晰展示多轮对话中上下文维护与知识检索的协同机制,最终实现连贯、个性化的交互体验,为实际应用提供可扩展的技术范式。
2026-10-08 06:30:00
515
原创 你的文件复制为何“丢”了权限和时间戳?——Python shutil 高级文件操作的隐秘陷阱与正确姿势
在 Python 中,shutil 模块是文件和目录高级操作的瑞士军刀。它提供了复制、移动、删除、归档等远超 os 模块基础能力的功能。你可能已经习惯用 shutil.copy() 复制文件、用 shutil.rmtree() 清空目录,但你是否注意过:复制后的文件权限变了、修改时间戳丢了、符号链接被解引用了;copytree() 因为目标目录已存在而直接崩溃;rmtree() 在遇到只读文件时拒绝删除,或者更可怕的——因为处理符号链接不当而误删了源目录的内容?这些问题的根源在于 shutil 的默认行为并
2026-10-07 09:30:00
268
原创 【八个月网安课程】第九周·周四:指纹识别与 Google Hacking——whatweb、wappalyzer 与搜索引擎语法
今天将学会如何在不见面、不扫描的情况下,通过识别目标网站的技术栈和利用搜索引擎获取敏感信息,将信息收集提升到更高维度。这些技巧是渗透测试标准流程中“信息收集”阶段的核心组成部分,能帮你绘制出目标的完整技术画像,发现隐藏的资产与漏洞线索。
2026-10-07 08:30:00
384
原创 【基于 Swoole+Hyperf 的微服务实战】第九周·周四:实现订单服务并通过网关聚合下单接口
本周四,基于 Swoole+Hyperf 构建订单服务,通过 RPC 调用用户、商品、库存服务,实现下单全流程。订单服务在 9505 端口暴露 CreateOrder 接口,完成用户校验、商品查询与库存冻结,并生成状态为 frozen 的订单。网关聚合 /orders 接口,集成 JWT 鉴权与 50 QPS 限流,实现全链路贯通。测试验证了注册登录、下单、库存冻结及限流生效,为后续 Saga 分布式事务奠定基础。
2026-10-07 07:30:00
506
原创 【三个月 AI Agent 实战学习】Day 30:对话中的短期记忆管理 —— 让 Agent 记住上下文
本文介绍了多轮对话中短期记忆管理的两种核心策略:缓冲记忆(Buffer Memory) 与摘要记忆(Summary Memory)。通过 LangChain 实现对比实验发现,缓冲记忆保留完整上下文但 Token 消耗随对话增长;摘要记忆则通过 LLM 压缩历史,显著降低 Token 使用,牺牲部分细节。二者各有利弊,为构建高效、有状态的客服 Agent 提供了关键实践基础。
2026-10-07 06:30:00
950
原创 你的临时文件为何总在“裸奔”?——Python tempfile 模块的安全陷阱与最佳实践
Python tempfile 模块可有效规避手动创建临时文件的安全与可靠性问题,如命名冲突、符号链接攻击、权限泄露及残留文件。其通过随机命名、原子创建、默认私有权限和自动清理机制保障安全。正确使用 TemporaryFile(匿名)或 NamedTemporaryFile(带路径),避免 mkstemp/mkdtemp 忘记清理,并注意跨平台兼容性与多线程隔离。推荐结合上下文管理器,确保资源及时释放,彻底告别“裸奔”临时文件。
2026-10-06 09:30:00
262
原创 【八个月网安课程】第九周·周三:目录扫描工具——Dirsearch、dirb、御剑参数配置与字典使用
第九周周三学习目录扫描技术,掌握Dirsearch、dirb等工具的使用,理解其核心参数与状态码含义。通过自定义字典、多线程扫描及图形化工具御剑,实现对目标站点敏感路径(如/admin/、/backup/)的高效探测。结合DVWA实战,验证200、301、403等响应结果的价值,明确目录扫描在信息收集中的关键作用,并学会规避检测、提升效率的策略。
2026-10-06 08:30:00
258
原创 【基于 Swoole+Hyperf 的微服务实战】第九周·周三:打造商品服务和库存服务
本周三,基于 Swoole+Hyperf 构建电商核心服务,独立开发商品与库存服务。商品服务管理商品信息,库存服务实现冻结、解冻、扣减等操作,并通过 Redis 分布式锁保障高并发下的数据安全。两服务通过 JSON-RPC 通信,注册至 Consul 实现服务发现。网关聚合接口 /products 聚合商品与库存数据,完成商品浏览与库存扣减全流程验证,实现解耦、可扩展的微服务架构。
2026-10-06 07:30:00
343
原创 【三个月 AI Agent 实战学习】Day 29:RAG 优化 —— 切分策略与检索质量
本文探讨RAG系统中文档切分策略对检索质量的影响。通过对比CharacterTextSplitter、RecursiveCharacterTextSplitter和TokenTextSplitter,发现递归切分因保留语义边界,显著提升检索相关性。实验表明,合理设置chunk_size与chunk_overlap可平衡上下文完整性与信息冗余,其中300字符、50重叠为较优配置。最终建议根据文档结构与任务需求选择切分方式,并结合实际查询评估效果,以优化RAG性能。
2026-10-06 06:30:00
449
原创 你的文件为何“截”不断?——Python truncate() 的隐秘规则与安全截断术
Python truncate() 仅在可写模式下有效,按字节截断文件,不识别编码边界。文本模式下截断可能导致乱码;只读模式调用会抛异常;缓冲区未刷新或指针位置错误会导致截断失效。安全做法:使用 'r+'/'w' 模式,截断前 seek(0),文本模式需手动对齐编码边界,或直接重写内容。避免在 'a' 模式下截断后写入,以防数据错位。
2026-10-05 09:30:00
334
原创 【八个月网安课程】第九周·周二:BurpSuite 进阶——Decoder、Comparer 与扩展安装
本文介绍了BurpSuite中Decoder、Comparer与Extender三大进阶功能。Decoder实现多层编解码,助力绕过WAF、分析JWT;Comparer通过可视化对比请求/响应差异,高效验证盲注、CSRF漏洞;Extender则支持从BApp Store安装HackBar、Autorize等扩展,提升测试自动化水平。结合实操案例,掌握这些“小而精”工具,是迈向渗透测试精通的关键一步。
2026-10-05 08:30:00
624
原创 【基于 Swoole+Hyperf 的微服务实战】第九周·周二:为电商核心系统填充第一个业务服务——用户服务
第九周周二,为电商系统实现首个微服务——用户服务。基于Swoole+Hyperf架构,完成项目初始化、数据库与Consul注册配置,通过Proto契约定义并实现Register、Login、GetUserById等RPC接口。集成hyperf/jwt实现JWT令牌签发,采用Bcrypt加密存储密码,确保安全。服务成功注册至Consul,经网关反向代理验证,初步构建起统一认证入口,奠定系统身份认证基石。
2026-10-05 07:30:00
395
原创 【三个月 AI Agent 实战学习】Day 28:项目 —— 网络爬虫 Agent
今日项目构建基于LangChain的网络爬虫Agent,集成requests与BeautifulSoup实现网页抓取,封装为鲁棒工具处理超时、编码、反爬等问题。通过ReAct框架,Agent可自主调用工具获取网页文本并生成摘要,支持错误反馈与迭代决策。代码涵盖异常处理、内容清洗与截断优化,实现从输入网址到智能摘要的全流程自动化,提升真实场景下的可用性与稳定性。
2026-10-05 06:30:00
787
原创 你的 seek() 为何在文本文件中“迷路”?——Python 文本模式随机访问的编码陷阱与正确姿势
Python文本模式下seek()与tell()行为不透明,因编码与换行符翻译层干扰,返回值为不可预测的“不透明标记”。仅支持seek(0)和seek(tell()返回值),其他用法易导致乱码或异常。正确做法:需随机访问时改用二进制模式,或预先建立行偏移表(记录每行tell()值)实现精准跳转。避免将tell()结果当作字符数或字节索引,确保文件操作安全可复现。
2026-10-04 09:30:00
303
原创 【八个月网安课程】第九周·周一:BurpSuite 核心功能——Proxy、Repeater、Intruder 实战
系统掌握渗透测试人员的必备武器——BurpSuite。它不仅是抓包工具,更是集代理、重放、爆破、自动化扫描于一体的瑞士军刀。今天聚焦三大核心模块:Proxy(拦截与查看)、Repeater(手工重放与调试)、Intruder(自动化暴力测试)。请务必亲手完成每个实验,让工具成为你双手的延伸。
2026-10-04 08:30:00
501
VMware-Workstation-Full-26H1u1-25688693(解压密码:VMware).7z
2026-09-13
VMware-Workstation-Full-26H1u1-25688693.x86-64.bundle
2026-09-13
CodeBuddy-win32-x64-user-4.12.0.37847260-b4c35ed0-cn.exe
2026-09-13
WorkBuddy-win32-x64-user-5.5.4.38151288-1ca4889a.exe
2026-09-12
Redis-8.10.1-Windows-x64-msys2-with-Service.zip
2026-09-06
Dell-Command-Update-Windows-Universal-Application-M9H5F-WIN64-5.7.2-A00.EXE
2026-10-11
CodeBuddy-win32-x64-user-4.12.1.39217423-757a5b2f-cn.exe
2026-10-09
617.42-desktop-win10-win11-64bit-international-nsd-dch-whql.exe
2026-10-09
openwrt-25.12.5-bf2a6946d13b-ramips-mt7621-hiwifi-hc5962-squashfs-sysupgrade.bin
2026-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅