docs: update batch-processor.md (#5525)

This commit is contained in:
Baoyuan 2021-11-16 00:27:39 -06:00 committed by GitHub
parent 718eb4b21e
commit 9b355c6f13
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,5 +1,5 @@
--- ---
title: 批处理 title: 批处理
--- ---
<!-- <!--
@ -21,23 +21,23 @@ title: 批处理机
# #
--> -->
批处理处理器可用于聚合条目(日志/任何数据)并进行批处理。 批处理器可用于聚合条目(日志/任何数据)并进行批处理。
当batch_max_size设置为零时处理器将立即执行每个条目。将批处理的最大大小设置为大于1将开始聚合条目直到达到最大大小或超时到期为止 `batch_max_size` 设置为零时,处理器将立即执行每个条目。将批处理的最大值设置为大于 1 将开始聚合条目,直到达到最大值或超时。
## 构型 ## 配置
创建批处理程序的唯一必需参数是函数。当批处理达到最大大小或缓冲区持续时间超过时,将执行该功能 创建批处理器的唯一必需参数是函数。当批处理达到最大值或缓冲区持续时间超过时,函数将被执行
|名称 |需求 |描述| |名称 |必选项 |描述|
|------- |----- |------| |------- |----- |------|
|name |可选的 |标识批处理者的唯一标识符| |name |可选的 |标识批处理者的唯一标识符|
|batch_max_size |可选的 |每批的最大大小默认为1000| |batch_max_size |可选的 |每批的最大大小,默认为 `1000`|
|inactive_timeout|可选的 |如果不活动,将刷新缓冲区的最大时间(以秒为单位),默认值为5s| |inactive_timeout|可选的 |如果不活动,将刷新缓冲区的最大时间(以秒为单位),默认值为 `5`|
|buffer_duration|可选的 |必须先处理批次中最旧条目的最大期限以秒为单位默认是5| |buffer_duration|可选的 |必须先处理批次中最旧条目的最大期限(以秒为单位),默认是 `5`|
|max_retry_count|可选的 |从处理管道中移除之前的最大重试次数;默认为| |max_retry_count|可选的 |从处理管道中移除之前的最大重试次数;默认为 `0`|
|retry_delay |可选的 |如果执行失败应该延迟进程执行的秒数默认为1| |retry_delay |可选的 |如果执行失败,应该延迟进程执行的秒数;默认为 `1`|
以下代码显示了如何使用批处理程序的示例。批处理处理器将要执行的功能作为第一个参数,将批处理配置作为第二个参数。 以下代码显示了如何使用批处理程序的示例。批处理器将一个要执行的函数作为第一个参数,将批处理配置作为第二个参数。
```lua ```lua
local bp = require("apisix.utils.batch-processor") local bp = require("apisix.utils.batch-processor")
@ -63,6 +63,6 @@ if batch_processor then
end end
``` ```
注意:请确保批处理的最大大小(条目数)在函数执行的范围内。 注意:请确保批处理的最大(条目数)在函数执行的范围内。
刷新批处理的计时器基于“ inactive_timeout”配置运行。因此,为了获得最佳使用效果, 刷新批处理的计时器基于 `inactive_timeout` 配置运行。因此,为了获得最佳使用效果,
保持“ inactive_timeout”小于“ buffer_duration” 保持 `inactive_timeout` 小于 `buffer_duration`