@ batchactions/ 状态序列
将执行两者的适配器顺序化 StateStore 财务报告和审定财务报表 DistributedStateStore 页:1 @batchactions。 。 。 .
使用此软件包来坚持SQL数据库中由Sequelize v6支持的工作状态,记录和分批元数据.
安装
npm install @batchactions/state-sequelize @batchactions/core sequelize
对于分布模式 :
npm install @batchactions/distributed @batchactions/import
快速启动
import { Sequelize } from 'sequelize';
import { SequelizeStateStore } from '@batchactions/state-sequelize';
import { BulkImport, CsvParser, BufferSource } from '@batchactions/import';
const sequelize = new Sequelize(process.env.DATABASE_URL!);
const stateStore = new SequelizeStateStore(sequelize);
await stateStore.initialize();
const importer = new BulkImport({
schema: { fields: [{ name: 'email', type: 'email', required: true }] },
stateStore,
});
importer.from(new BufferSource('email\[email protected]'), new CsvParser());
await importer.start(async (record) => {
await saveUser(record);
});
创建的表格
batchactions_jobsbatchactions_recordsbatchactions_batches
initialize() 并且可以在启动时安全使用.
分布式支持
SequelizeStateStore 支持:
- A. 原子批次索赔
claimBatch(中文(简体) ) - Stale 批次再生(
reclaimStaleBatches(中文(简体) ) - 批量级记录持久性
- 完全完成最后工作
tryFinalizeJob(中文(简体) )
限制
- 不可串行的计数场(
customValidator, (中文(简体) ),transform, (中文(简体) ),pattern在长期存在之前就剥离,在恢复工作时必须重新注入. - SQLite适合开发/测试,但不推荐用于高通币分布式加工.
兼容性
- 节点.js >= 20.0.0
- 同伴依赖性 :
@batchactions/core页:1sequelize^ 6. 0
替代品
如果你喜欢Prisma而不是Squelize,请使用 @batchactions/state-prisma 执行相同的 StateStore 财务报告和审定财务报表 DistributedStateStore 与 Prisma v6/v7 接口.
链接
- 仓库 : https://github.com/vgpastor/batchactions/tree/main/packages/state-sequelize 互联网档案馆的存檔,存档日期2013-12-02
- 问题: https://github.com/vgpastor/batchactions/ issues (中文(简体) )
- 贡献指南 : https://github.com/vgpastor/batchactions/blob/main/CONTRIPIBUTING.md 互联网档案馆的存檔,存档日期2014-12-22
许可证
麻省理工学院