2013-10-09 2 views
0

Я пытаюсь выполнить параллельную/параллельную обработку в своем требовании, но я не получил соответствующей помощи в моих многочисленных попытках в этом отношении.Нужна помощь в Apache Camel multicast/параллельная/параллельная обработка

У меня есть 5 удаленных каталогов (которые могут быть добавлены или удалены), которые содержат файлы журналов, я хочу, чтобы Dow загружал их каждые 15 минут в мой локальный каталог и хочу выполнить индексацию Lucene после завершения задания передачи ftp, я хотите динамически добавлять маршрутизаторы.

Поскольку все эти удаленные машины имеют разные конечные точки и разные маршруты. У меня нет какой-то особой точки, чтобы начать все это.

Start 
<parallel> 
     <download remote dir from: sftp1> 
     <download remote dir from: sftp2> 
      .... 
</parallel> 
<After above task complete> 
<start Lucene indexing> 
<end> 

Повторите выше на каждые 15 минут,

Я хочу, чтобы загрузить все папки paralally, Просьбу предложить решение, если кто-нибудь работали на аналогичном требовании.

Я хотел бы знать, как начинать/начинать эти множественные маршруты (например, это несколько удаленных каталогов), должен начинаться, когда у меня нет конечной точки стартера. Я хотел бы начать все операции ftp параллельно и после завершения индексирования. Спасибо, что нашли время для чтения этого сообщения, я очень ценю вашу помощь.

Я попытался, как это,

from (bean:foo? Method=start).multicast().to (direct:a).to (direct:b)... 

From (direct:a) .from (sftp:xxx).to (localdir) 
from (direct:b).from (sftp:xxx).to (localdir) 

ответ

0
  • верблюжьей FTP поддержка периодического опроса с помощью свойства consumer.delay
  • добавить верблюжьи-FTP потребительские маршруты динамически для каждого сервера, как показано на this unit test
  • вы можете затем агрегировать свои результаты на основе значения размера или таймаута для инициирования индексации Lucene и т. д.

[TODO - собрать пример]

+0

Привет Спасибо за ответ, я увидел код, который вы дали для добавления маршрутов динамически, что моя потребность ' <из URI =«Седа: старт»/ > <Ури = "прямой: а" /> <Ури = "прямой: а" /> , когда я добавляю как выше <от URI = "Седа: старт" /> <Ури = «прямые: с» /> ' делает приведенный выше код преобразует как это ?, потому что я хочу добавить еще один маршрутизатор, который похож на то, что я добавил, как параллельно с этим уже запущенными процессами) , –

Смежные вопросы