如果我理解你的问题是正确的,你有:
- 127.0.0.1:8056 作为短信客户端
- localhost:2775 作为短信发送者
看起来像这样
from:client1 ----> to:sender1
假设您想将更多SMS 客户端连接到您的SMS 发件人。
from:client1 -----> to:sender1
from:client2 ----/
from:client3 ---/
您需要做的就是从节点添加更多内容。
我认为您正在使用 springish xml 文件来配置 Camel。这意味着您以声明方式执行此操作,而骆驼执行的操作与您在 xml 文件中声明的一样多。没有for循环什么的。因此,从字面上看,您需要在from uri="smpp://smppclient@127.0.0.1:8056?password=password&systemType=consumer"/>
xml 中添加更多行。以其他方式,您可以使用骆驼 java API 动态配置/添加节点。因此,您可以从 DB 或其他任何方式配置或添加节点。
好吧,但是您必须添加尽可能多的to uri="smpp://smppclient@localhost:2775?password=password&&systemType=producer"/>
节点,这并不是我们的意思。为了解决这个问题,我们在两者之间添加了一个抽象节点。它看起来像:
from:client1 -----> direct:sender ----> to:sender1
from:client2 ----/
from:client3 ---/
所以你的代码将是:
from uri="smpp://smppclient@127.0.0.1:8056?password=password&systemType=consumer"/>
to uri="direct://sender"
from uri="smpp://smppclient2@...."/>
to uri="direct://sender"
from uri="smpp://smppclient3@..."/>
to uri="direct://sender"
from uri="direct://sender"
to uri="smpp://smppclient@localhost:2775?password=password&&systemType=producer"/>
你可以考虑使用seda
而不是direct
这样你很容易排队。