news 2026/10/25 18:16:47

长任务还活着吗:用进展租约区分卡住与依赖变慢

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
长任务还活着吗:用进展租约区分卡住与依赖变慢

一个任务每秒上报心跳,十分钟没完成任何步骤。另一个任务正在等待供应商生成视频,三分钟没有新输出,却仍在预期时长内。只凭“几秒没动静就重启”,会把这两种情况混在一起。

活着、前进、拥有写权限

我会分别记三件事:heartbeat_at说明进程仍能通信;progress_at说明业务检查点确实前进;generation决定谁有权提交结果。心跳不能续期业务进展,日志刷屏也不能算完成步骤。

Kubernetes 探针文档区分启动、存活和就绪。它们是进程管理背景,不是业务任务完成度协议。任务层还需给各步骤定义正常等待区间,例如“视频供应商处理中”和“结果已下载”是不同检查点。

接管必须让旧 owner 失去提交资格

下面用逻辑时间演示 fencing。它不是分布式租约实现:真实系统要让数据库以条件更新原子地分配代次,并在每次落库时验证代次。

class Task: def __init__(self): self.owner, self.gen, self.progress = 'A', 1, 10 self.step = 0 def take(self, new_owner, now, timeout): if now - self.progress <= timeout: return None self.owner, self.gen = new_owner, self.gen + 1 self.progress = now return self.gen def commit(self, owner, gen, step, now): if (owner, gen) != (self.owner, self.gen) or step <= self.step: return False self.step, self.progress = step, now return True t = Task() assert t.take('B', 15, 10) is None assert t.take('B', 30, 10) == 2 assert not t.commit('A', 1, 1, 31) assert t.commit('B', 2, 1, 32) print('early takeover denied; stale owner fenced; new owner committed')

本地 Python 3 执行通过三项断言,没有连接任务系统。这个实验把关键反例说清楚:超时后旧进程可能恢复,如果存储层不验代次,它依然能覆盖新结果。应用里单独检查一次再写入,会留下竞争窗口。

慢依赖别用重启“治疗”

每个检查点保存预期工作、最后进展证据和等待对象。超出观察窗口先检查供应商任务状态和本地积压;确认需要接管后,再撤销旧代次、分配新 owner。外部扣款、视频生成等副作用还要有稳定幂等键,否则 fencing 只能保护本地写,挡不住重复消费。

十月的视频 Agent 热点适合用这个框架审视,但本文不虚构某个平台耗时或重启收益。发布前应补齐真实依赖的等待上限、取消能力及幂等合同;未核实前,“卡住”只是待验证假设。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/25 18:16:03

Tool 返回值脱敏:用专用 DTO 白名单守住模型上下文

把手机号打成星号&#xff0c;并没有回答另一个问题&#xff1a;为什么模型能拿到这个客户对象的全部字段&#xff1f;内部实体里可能还有地址、备注、关联人和嵌套Map。通用反射清洗器只要漏一种容器&#xff0c;敏感内容就可能顺着Tool返回值进入上下文。 更容易核对的做法是…

作者头像 李华
网站建设 2026/10/25 18:15:48

ORB-SLAM2跑自己的图片序列:从编译到轨迹评估的完整指南

简介&#xff1a;这份资源面向视觉SLAM初学者与需要跑通自定义数据集的开发者&#xff0c;聚焦ORB SLAM2在自采图片序列上的实际应用&#xff0c;帮助解决从视频抽帧到生成rgb.txt、再到加载运行自有数据的完整链路问题。压缩包为gz格式&#xff0c;共4个文件&#xff0c;约4.3…

作者头像 李华
网站建设 2026/10/25 18:15:27

原型反馈审阅固定窗口到达量分析器:边界规则、可运行源码与验收

项目编号&#xff1a;20261021-010。需求方向来自当日公开产品简介&#xff1b;所有示例均为独立合成数据&#xff0c;不是产品真实日志。要解决的具体问题 在显式半开观察区间内按固定窗口累加事件数和units&#xff0c;保留零流量窗口并计算每秒到达率。本工具只处理主动输入…

作者头像 李华
网站建设 2026/10/25 17:52:34

2026年AI大模型API聚合平台评测:三款主流服务的真实表现与选型要点

大模型进入月更节奏后&#xff0c;直连官方API的瓶颈逐一暴露&#xff1a;跨境网络不稳、调用限制复杂、多厂商密钥管理繁琐、企业级审计与合规缺位。本轮评测基于连续压力测试与真实生产数据&#xff0c;从协议原生支持、模型生态覆盖、SLA可用性、成本与治理透明度四个维度&a…

作者头像 李华
网站建设 2026/10/25 17:42:55

图像去模糊的核心技术:Hyper-Laplacian先验与IRLS求解实践

简介&#xff1a;围绕经典图像去模糊论文《Fast Image Deconvolution using Hyper-Laplacian Priors》的Matlab实现资源包&#xff0c;面向图像处理、计算机视觉方向的研究者与开发者&#xff0c;旨在应对盲去卷积中模糊核未知、噪声干扰等难点&#xff0c;借助超拉普拉斯先验对…

作者头像 李华
网站建设 2026/10/25 17:32:13

AI对抗训练提升代码质量:原理与实践

1. 项目概述&#xff1a;当代码质量遇上对抗思维在软件工程领域&#xff0c;代码质量一直是困扰开发团队的"顽固问题"。传统解决方案如代码审查、静态分析等往往陷入两个困境&#xff1a;要么审查者因熟悉代码逻辑而产生盲区&#xff0c;要么自动化工具受限于预设规则…

作者头像 李华