我在测试 python 订阅流表,我发现通过 batchSize 这个参数无法准确控制 python 端数据处理的条数,若上游一次性追加多条数据(数据量大于 batchSize)会按照追加的数据量处理,那么在此场景下,若上游一次性追加大量数据,那么就有可能在客户端堆积起来。是这样嘛?
若数据量太大,系统会按照 maxMsgNumPerBlock 这个配置项指定的条数,对处理的数据进行拆分。
另外,客户端有一个消费队列去维护接收的数据,如若消费对列满了,则会阻塞上游的写入,数据在发布队列进行堆积。采用流是系统的反压机制。