基于Azure PaaS替代AutoSys的自研作业调度器POC方案咨询
云原生作业调度器POC:工具选型与方案建议
工具选型
前端(UI层)
- Angular:基于指定技术栈,搭配Angular Material组件库快速搭建作业配置表单、监控仪表盘;用RxJS处理异步状态更新(如作业状态实时刷新),Angular Router实现配置页、监控页、作业详情页的路由跳转。
后端服务层
- C#/.NET 8 Web API:作为UI与Azure PaaS服务的中间层,处理作业配置的CRUD操作、权限校验、作业元数据持久化逻辑,对接数据库与Azure服务。
- Azure Function App(.NET 8):承担作业执行的触发载体,分两类函数:
- 定时触发函数:处理周期性作业,通过CRON表达式配置调度规则;
- HTTP触发函数:处理一次性作业的手动触发或外部回调。
调度核心组件
- Azure Logic Apps:作为核心调度编排引擎,根据UI配置的调度规则(一次性/周期性)触发对应Azure Function;支持可视化工作流设计,原生集成HTTP调用(触发远程API),自带重试、错误处理机制,大幅降低自研调度逻辑的复杂度。
- Quartz.NET(可选):若需处理复杂依赖链等自定义调度场景,可在.NET 8 Web API中集成Quartz.NET,配合数据库存储调度任务元数据,作为Logic Apps的补充方案。
数据存储
- PostgreSQL/SQL Server(Azure托管版):存储作业配置(ID、名称、调度规则、目标API地址、参数)、作业执行日志(触发时间、状态、返回结果、错误信息)、作业状态快照。选择Azure SQL Database或Azure Database for PostgreSQL,利用云原生托管服务减少运维成本。
监控与状态同步
- Azure Monitor:收集Azure Function、Logic Apps的执行日志与指标,对接UI展示作业的成功/失败/运行中状态,支持配置告警规则(如作业失败触发通知)。
- SignalR(.NET 8):在Web API中集成SignalR,实现作业状态的实时推送,让UI无需轮询即可即时更新状态。
方案建议
整体架构设计
采用分层云原生架构:
- UI层:Angular单页应用,提供作业配置、监控、详情查询功能,通过HTTP调用后端Web API,通过SignalR接收实时状态更新。
- 服务层:.NET 8 Web API处理业务逻辑,负责作业配置持久化、权限校验,调用Azure Logic Apps/Function触发作业;Azure Function负责实际的远程API调用执行。
- 调度层:Azure Logic Apps作为核心调度引擎,根据作业配置触发任务;Quartz.NET作为备选处理复杂调度场景。
- 数据层:Azure托管的PostgreSQL/SQL Server存储作业元数据与执行日志。
- 监控层:Azure Monitor收集日志,SignalR推送实时状态到UI。
核心功能实现
作业配置与调度
- UI端构建表单,支持选择作业类型(一次性/周期性),配置调度时间(一次性选具体时间,周期性输入CRON表达式或可视化选择频率),填写远程API地址、请求方法、参数。
- 后端Web API将配置存入数据库,同时调用Azure Logic Apps API创建对应工作流:一次性作业创建定时触发工作流,周期性作业创建CRON触发工作流;若用Quartz.NET,则直接创建调度任务并存入数据库的Quartz表,由调度器触发Function执行。
作业监控与状态更新
- UI端通过SignalR订阅作业状态变更,实时展示作业运行状态。
- Azure Function执行远程API后,将执行结果(状态、返回值、错误信息)写入数据库,同时通过SignalR通知UI更新状态。
- UI端集成Azure Monitor日志查询能力,支持筛选、搜索历史执行日志。
远程API触发
- Azure Function中编写HTTP调用逻辑,根据作业配置发起请求,用Polly库实现超时、重试策略。
- Logic Apps直接使用HTTP连接器调用远程API,自带重试与错误处理,无需额外编码。
POC验证重点
- 验证UI作业配置流程的顺畅性:包括一次性/周期性作业的创建、编辑、删除。
- 验证调度准确性:一次性作业是否在指定时间触发,周期性作业是否按CRON规则执行。
- 验证远程API触发可靠性:成功/失败场景下状态是否正确同步到UI,错误日志是否可追溯。
- 验证云原生特性:Azure PaaS服务的自动扩缩容、高可用性,无需手动运维服务器。
内容的提问来源于stack exchange,提问作者Vignesh Kumar A
相关产品推荐
相关产品推荐

