如何在运行Aeron Samples时设置Aeron订阅者和发布者数量的限制



我正在运行这里给出的Aeron样本。

运行测试的步骤:

git clone --branch 1.27.0 https://github.com/real-logic/aeron.git
gradle --console='plain' --stacktrace assemble
$JAVA_HOME/bin/java -cp /src/aeron-all/build/libs/aeron-all-1.27.0.jar -Daeron.dir=/dev/shm/aeron-root io.aeron.driver.MediaDriver &
$JAVA_HOME/bin/java -cp /src/aeron-all/build/libs/aeron-all-1.27.0.jar io.aeron.samples.BasicSubscriber &
$JAVA_HOME/bin/java -cp /src/aeron-all/build/libs/aeron-all-1.27.0.jar io.aeron.samples.BasicPublisher &

测试的输出

Offering 53747/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3439776) <<Hello World! 53747>>
Offering 53748/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3439840) <<Hello World! 53748>>
Offering 53749/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3439904) <<Hello World! 53749>>
Offering 53750/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3439968) <<Hello World! 53750>>
Offering 53751/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3440032) <<Hello World! 53751>>
Offering 53752/10000000 - yay!
Message to stream 1001 from session -1579104823 (18@3440096) <<Hello World! 53752>>

如输出中所示,将发生1000000个Subscribe和Publish事件。

因此,我的问题是如何限制交互次数。使用一些标志进行操作将非常好

您可以使用aeron.sample.messages系统属性配置BasicPublisher发送的消息数量,如下所示:

$JAVA_HOME/bin/java -cp /src/aeron-all/build/libs/aeron-all-1.27.0.jar -Daeron.sample.messages=100 io.aeron.samples.BasicPublisher &

最新更新