随笔分类 - 项目实训
摘要:前两篇完成了判题系统集成和 agent-service 的基础架构搭建。这套 AI 辅助系统跑起来之后,很快暴露了三个层面的问题:知识图谱的可视化展示过于扁平,agent-service 的固定编排流程过于僵硬,以及 RAG 检索质量不稳定。本篇记录这三个问题的解决过程。 一、知识图谱:从数据库驱动
阅读全文
摘要:(一)中完成了 OJ 后端与 remote_judge 的系统集成,并借助 MIMO 搭建了 agent-service 的基础架构,扩展了 5 个核心 AI 功能。这篇继续深入,重点展开 agent-service 的架构设计思路、关键模块的实现细节,以及用 MIMO 做 vibe-coding
阅读全文
摘要:前面完成了判题结果标准化、安全加固和Compose部署。本周的工作集中在两个方向:一是判题性能优化——将单次判题延迟从\(~240ms\)降至\(~100ms\),同时修复内存测量始终为0KB的问题;二是在编译前引入AC自动机代码黑名单检测,在沙箱隔离之外增加一道防线。 从ACM参赛者的角度看,判题
阅读全文
摘要:首先非常感谢小米官方的“百万亿 Token 创造者激励计划”给的token-plan,我申请的理由写了要写数据可视化课设,发了一个月价值100刀乐的Max plan,量大管饱。 前几周完成了 remote_judge 远端判题子系统的完整开发——Docker 沙箱执行、容器池复用、熔断降级、Secc
阅读全文
摘要:本次的核心工作是将判题子系统从"开发环境可运行"升级为"一键部署可验证"的完整系统。具体包括Docker Compose四服务部署编排、Compose环境下的Bug修复以及项目的全面总结。 一、Docker Compose四服务部署 1.1 部署架构 flowchart LR A["mysql:33
阅读全文
摘要:前面完成了HTTP API、沙箱引擎、Worker并发、判题标准化和安全加固的全部开发。本次的核心工作是系统级的集成测试和Remote模式的端到端验证,并开发了配套的测试工具。 一、测试全景 项目的测试覆盖多个层次,形成从单元到端到端的完整验证体系: E2E Tests: Compose四服务端到端
阅读全文
摘要:前几周已经实现了Worker并发控制和系统可观测性。本周的工作集中在判题结果的标准化——补全全部判题状态、完善MLE和OLE的判定逻辑——以及安全加固层面的seccomp正式集成。 从ACM参赛者的角度看,判题结果的准确性是OJ系统最基础也最重要的要求。如果一次Runtime Error被误判为Wr
阅读全文
摘要:前几周完成了HTTP API和沙箱核心的开发,系统已能串行处理判题请求。但在实际使用场景中——比如ACM比赛开场时的集中提交——串行处理会导致后续提交在队列中长时间等待。本周的核心工作是实现受控并发判题,并建立系统可观测性体系。 一、并发方案设计:Worker令牌池模式 1.1 方案评估 Go语言中
阅读全文
摘要:本周的工作围绕两个重点:将沙箱从单一C++支持扩展为C++17、Go 1.22、Python 3.11三语言判题,以及实现完整的HTTP API接口。作为ACM参赛者,对OJ系统的接口设计和判题状态模型有直接的使用经验,这些经验在本周的设计中提供了明确的参考。 一、多语言配置化设计 1.1 设计思路
阅读全文
摘要:经过前两周的需求分析和架构设计,本周正式进入判题核心模块的开发。主要内容是Docker CLI沙箱的编译运行能力实现、熔断降级机制和seccomp安全策略。从ACM参赛的角度来看,沙箱是整个判题系统中最核心的部分——它直接决定了代码能否被正确编译和运行,任何阶段的疏漏都可能导致判题结果不准确。 一、
阅读全文
摘要:第一周确定了Docker作为代码隔离的技术基础。本周的工作围绕判题子系统的整体架构设计展开:选择同步还是异步的通信模型、如何抽象基础设施层、gRPC在项目中的角色定位。 一、核心决策:同步还是异步? 1.1 两种架构模型的对比 在设计对外接口时,有两种方案可供选择: 方案A——同步gRPC直连:OJ
阅读全文
摘要:作为DoReMiFaSo团队中负责判题子系统的开发者,本周的主要工作是明确判题子系统的需求边界、调研代码隔离方案,并学习Docker容器化的核心操作。 一、判题子系统需求拆解 1.1 系统的定位 判题子系统不是OJ后端内部的判题模块,而是一个独立部署的服务,包含HTTP API、异步任务队列、判题W
阅读全文

浙公网安备 33010602011771号