<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>OJ on 撷时录</title>
		<link>http://localhost:1313/project-tags/oj/</link>
		<description>Recent content in OJ on 撷时录</description>
		<generator>Hugo</generator>
		<language>zh-CN</language>
		
		
		
		
			<lastBuildDate>Mon, 31 Aug 2026 00:00:00 +0800</lastBuildDate>
		
			<atom:link href="http://localhost:1313/project-tags/oj/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>ACOJ</title>
				<link>http://localhost:1313/projects/acoj/</link>
				<pubDate>Mon, 31 Aug 2026 00:00:00 +0800</pubDate>
				<guid>http://localhost:1313/projects/acoj/</guid>
				<description>&lt;p&gt;&lt;strong&gt;ACOJ&lt;/strong&gt; 是在线评测（OJ）monorepo：在 HEI 脚手架上扩展题库、提交判题与多执行机调度，提供 &lt;strong&gt;Admin&lt;/strong&gt;（Vue 3）、&lt;strong&gt;Portal&lt;/strong&gt;（React 19）与统一 Spring Boot API。判题执行依赖 &lt;a href=&#34;https://github.com/jiangbyte/SparkSandbox&#34;&gt;SparkSandbox&lt;/a&gt;：&lt;strong&gt;沙箱只编译与限资源运行，AC / WA 在 ACOJ 裁决&lt;/strong&gt;。Apache License 2.0。&lt;/p&gt;&#xA;&lt;p&gt;相对「沙箱内直接出最终结果」的一体化 OJ，隔离执行与题目语义拆开：执行机加权调度、熔断、排水、租约换机；平台保留测例版本、标签、发布校验与做题统计。&lt;code&gt;modules/oj&lt;/code&gt; 叠在脚手架之上，而不是从零拼一套账号与存储。&lt;/p&gt;&#xA;&lt;div class=&#34;solitude-tag tag-mermaid mermaid&#34;&gt;flowchart LR&#xA;  portal[&amp;#34;Portal&amp;#34;]&#xA;  admin[&amp;#34;Admin&amp;#34;]&#xA;  api[&amp;#34;Spring Boot API&amp;#34;]&#xA;  mq[&amp;#34;RabbitMQ&amp;#34;]&#xA;  sched[&amp;#34;调度 / 熔断 / 换机&amp;#34;]&#xA;  spark[&amp;#34;SparkSandbox&amp;#34;]&#xA;  portal --&amp;gt; api&#xA;  admin --&amp;gt; api&#xA;  api --&amp;gt; mq --&amp;gt; sched --&amp;gt; spark&#xA;  spark --&amp;gt;|&amp;#34;stdout / 状态&amp;#34;| api&#xA;  api --&amp;gt;|&amp;#34;AC / WA&amp;#34;| portal&lt;/div&gt;&#xA;&lt;h2 id=&#34;特性&#34;&gt;特性&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;双端账号&lt;/strong&gt;：ADMIN / PORTAL 独立会话（Sa-Token）；密码 RSA、验证码、失败锁定与限流；JustAuth（可配置）&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;RBAC&lt;/strong&gt;：账号 / 角色 / 部门 / 用户组 / 岗位；菜单、按钮与 API 授权；会话踢出&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;系统管理&lt;/strong&gt;：字典、动态配置（敏感项加密）、Banner、公告、反馈、弱口令库&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;对象存储&lt;/strong&gt;：S3 兼容（MinIO / RustFS / OSS），直链或预签名&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;运维&lt;/strong&gt;：审计与告警、登录日志、运营工作台、&lt;code&gt;sys_job&lt;/code&gt; / Lock4j&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;题库&lt;/strong&gt;：CRUD、测例 INLINE / OBJECT、标签、参考答案、试跑与发布校验&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;提交与判题&lt;/strong&gt;：多语言入队；RabbitMQ；加权调度、熔断 / 排水 / 租约换机；业务侧裁决&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;判题节点&lt;/strong&gt;：&lt;code&gt;oj_judge_node&lt;/code&gt; 登记沙箱；心跳探活；&lt;code&gt;oj_judge_dispatch&lt;/code&gt; 派发审计&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;个人中心&lt;/strong&gt;：公开资料、安全设置、实名认证；做题统计&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;API 前缀 &lt;code&gt;/api/v1/admin/*&lt;/code&gt; 与 &lt;code&gt;/api/v1/portal/*&lt;/code&gt;。子工程：&lt;code&gt;admin&lt;/code&gt; · &lt;code&gt;portal&lt;/code&gt; · &lt;code&gt;server&lt;/code&gt;。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
