10

私は Camel-SMPP に精通しており、消費者ルートと生産者ルートでもうまく機能します。Selenium SMPP SIM を使用して同じことをテストしています。

from uri="smpp://smppclient@127.0.0.1:8056?password=password&systemType=consumer"/>

uri="smpp://smppclient@localhost:2775?password=password&&systemType=producer"/> に

ただし、Camel をサーバー (多数のクライアントからの SMS を受け入れる) として実行したいと考えています。私の現在の From ルートは、1 つの SMS 送信者と密結合しています。これを汎用サーバーとして変更するにはどうすればよいですか。キャメルで可能ですか?

4

1 に答える 1

0

あなたの質問が正しいと私が理解した場合、あなたは次のことを持っています:

  • 127.0.0.1:8056 ( SMS クライアントとして)
  • SMS 送信者としての localhost:2775

このように見えます

from:client1 ----> to:sender1

より多くのSMS クライアントSMS 送信者に接続したいとしましょう。

from:client1 -----> to:sender1
from:client2 ----/
from:client3 ---/

作成する必要があるのは、ノードからさらに追加することだけです。

春っぽいxmlファイルを使ってCamelを設定していると思います。これは、宣言的な方法で行うことを意味し、camel は xml ファイルで宣言するのと同じくらい行います。ループなどはありません。from uri="smpp://smppclient@127.0.0.1:8056?password=password&systemType=consumer"/>したがって、文字通り、xmlにさらに行を追加する必要があります。他の方法では、camel 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ため、キューイングが非常に簡単になります。

于 2013-12-16T08:44:05.983 に答える