文件名称:gobatch:Golang批处理库
文件大小:19KB
文件格式:ZIP
更新时间:2024-06-13 16:43:58
go golang batching batch batch-processing
GoBatch GoBatch是Go的批处理库。 数据读取器和处理器分别是batch.Source和batch.Processor实现。 实际的数据输入和一批物料的处理由用户完成,而GoBatch库提供的batch.Batch结构负责处理其余的管道。 批处理管道包括几个阶段: 从源读取,可能是通道,磁盘,Redis或几乎任何地方。 所需要的只是一个知道如何实现的Source实现。 数据被写入batch.PipelineStage提供的通道中,并传递给Batch ,后者将项目排队并准备进行处理。 它根据其配置决定要一起批处理多少个项目。 Batch将这些项作为PipelineStage Batch发送到Processor ,后者对数据执行所有必要的操作。 GoBatch的典型用法是在读取或写入远程数据库或Redis时使用。 通过将多个呼叫分批处理,可以减少连接并减少网络流量。
【文件预览】:
gobatch-master
----.travis.yml(398B)
----pipeline()
--------pipeline.go(92B)
----processor()
--------error.go(367B)
--------nil.go(431B)
--------processor.go(109B)
----gobatch.go(164B)
----LICENSE(1KB)
----.gitignore(296B)
----batch()
--------item.go(550B)
--------helpers.go(1KB)
--------example_test.go(2KB)
--------batch_test.go(8KB)
--------errors.go(903B)
--------pipeline_stage_test.go(352B)
--------pipeline_stage.go(621B)
--------config.go(2KB)
--------helpers_test.go(1KB)
--------batch.go(13KB)
--------item_mock.go(1KB)
----README.md(3KB)
----source()
--------error.go(370B)
--------source.go(100B)
--------channel_test.go(858B)
--------nil.go(421B)
--------channel.go(487B)
----go.mod(50B)