<p>请花点时间回顾一下Spring云数据流的<a href="https://dataflow.spring.io/docs/concepts/architecture/#server-components" rel="nofollow noreferrer">responsibilities</a>。如果不清楚,SCDF既不会与Kafka之类的支持消息传递中间件交互,也不会在运行时使用它。换句话说,SCDF不会创建与之相关的主题或分区—它只是自动配置SpringCloudStream(SCSt)属性。你知道吗</p>
<p>但是,如果您在自定义处理器中使用SCSt,那么该框架会自动将所需通道绑定到中间件中的底层主题。该框架还具有更改分区行为的功能。也可以使用过度分区主题部署处理器。有<a href="https://cloud.spring.io/spring-cloud-static/spring-cloud-stream-binder-kafka/3.0.0.RELEASE/reference/html/spring-cloud-stream-binder-kafka.html#_configuration_options" rel="nofollow noreferrer">several other configuration options</a>来构建所需的流数据处理行为。你知道吗</p>
<p>您正在查看的Python示例没有SCSt提供的所有特性。这个方法是一个示例演练,演示了如何用Python构建本机处理器风格的应用程序,其中生产者和使用者配置是在Python代码本身中手动创建的。SCDF和SCSt均不影响此配方中的应用行为。你知道吗</p>
<blockquote>
<p>Should I somehow configure SCDF to create a Kafka topic with 3 partitions?</p>
</blockquote>
<p>如前所述,SCDF不与卡夫卡互动。你知道吗</p>
<blockquote>
<p>Or should I not rely on SCDF and create topics on my own in Python? I suppose this will be redundant, since SCDF also creates this topic.</p>
</blockquote>
<p>如果您的定制处理器不是springcloudstream应用程序,那么您有责任在代码中显式地定义主题+分区。你知道吗</p>
<blockquote>
<p>What component in SCDF is actually responsible for Kafka topics creation? And how can I influence it regarding number of partitions?</p>
</blockquote>
<p>春云溪。参见上面的解释。你知道吗</p>
<blockquote>
<p>If I stop this stream and launch again with 4 processor steps, should the topic be extended with the 4th partition? Because currently no new partitions get created.</p>
</blockquote>
<p>您不一定需要重新启动流数据管道。如果您的主题是预先过度分区的,那么运行时的任何其他使用者都应该能够自动参与竞争的使用者关系。请注意<a href="https://github.com/spring-io/dataflow.spring.io/issues/156" rel="nofollow noreferrer">spring-io/dataflow.spring.io#156</a>-我们正在添加一个配方来演示使用SCSt+SCDF+Kafka手动和自动缩放的可能性。你知道吗</p>