Мониторинг статуса задания в кластере Wildfly с помощью Apache Camel

Маршрут 1:

  • Файл, прочитанный на маршруте 1: статус в DB = ЗАПУЩЕН
  • Содержимое файла разделено (сотрудники: около 20000)
  • Содержимое помещено в очередь.

Маршрут 2

  • Читать из очереди в кластере (Wildfly 16.
  • Вставить или обновить сотрудника

Теперь нужно построить таблицу статуса с успешным и неудачным статусом. Если какое-либо сообщение завершилось ошибкой, то СТАТУС = СБОЙ, иначе СТАТУС = ЗАПУСК

Маршрут 1:

 .split(body().tokenizeXML("EmploymentUpdateRequest", "EmploymentUpdateRequests")) // Split and tokenize the requests, streaming individual requests to message queue
                .unmarshal(new JaxbDataFormat(JAXBContext.newInstance(EmploymentUpdateRequest.class)))
                .bean("someService", "updateEmployeeData")
                .marshal(new JaxbDataFormat(JAXBContext.newInstance(EmploymentUpdateRequest.class)))
                .inOnly(EMPLOYEES_QUEUE)
                        .choice()
                        .when(header("CamelSplitComplete"))
                            .log("Download xml file completed");

Маршрут 2:

        from(EMPLOYEES_QUEUE)
            .unmarshal(new JaxbDataFormat(JAXBContext.newInstance(EmploymentUpdateRequest.class)))
                .log("Extracting Data from Master")
                .bean("employeeService", "extract")
                .log("Verifying whether Data is correct or not")
                .bean("employeeService", "verifyExchange")
                .log("Persisting data to Master")
                .bean("employeeService", "save");

Любое предложение для достижения этого в Camel, развернутом в Cluster wildfly, который выбирает сообщения случайным образом, например 7000, один сервер выбирает 10000 1 выбор?

0 ответов

Другие вопросы по тегам