Обсуждения подходов к Интеграции

Обсуждаем способы и подходы при реализации Event-Driven архитектуры на платформе 1С

Инструментарий

www.soapui.org
www.membrane-soa.org
http://www.rabbitmq.com/
и другие

И конечно 1С. Желательно взять последнюю на сегодня версию платформы

Для затравки раздела хочу вам сказать что можно обсудить шины данных и 1С, заведя отдельную тему.
Например вот что можно сказать на данный момент

исходный запрос:
Хочу промышленную шину данных для 1С

ответы:
@lustin

Относительно продуктов типа ESB - то основная проблема будет именно в 1С, точнее в отсутствии к ней типовых адаптеров для промышленных шин.
Да и кстати как показала практика, к остальным продуктам тоже НЕ обязательно. После внедрения шины - ни одного типового адаптера не остается, все без исключения переписываются под клиента и передаются во владение (Governance).
Каждая из указанных систем обычно сложно дорабатывается за исключением самописных и 1С систем, которые меняются постоянно.

Hyperion и Primavera вообще содержат свой собственный итеграционный слой где и Web service и JAVA API наличествует.
Об API SharePoint давно все известно. И качестве Web сервисов от Microsoft тоже.
Ну а про 1С мы и так все знаем. API будет опаздывать за реальным функционалом.

Я к чему веду - шина: это всегда комплект компонентов
Поэтому ее выбор должен основываться на тех компетенциях которые есть у клиента или у команды внедрения.
Типовые адаптеры все равно придется адаптировать.
Потом управлять версиями и т.д.

Каждая промышленная шина накладывает особенности внедрения и владения - то есть выбор надо производить
В любом случае специалист по Java будет необходим

шина для одного человека - это MembraneESB
если хочется посерьезному (попромышленному), но с достаточной гибкостью и Enterprise support в России - это muleESB
если у клиента достаточная компетенция в Java - это WS02 или JBoss Fuse (+fabric8.io) - тоже имеет интегратора в России.
для особых товарищей с минимальной технической компетенцией, но большими деньгами можно использовать продукты типа WebSphere, BizTalk или даже SAP.

шина кстати никогда вам не обеспечит гарантированную доставку, за это отвечает MoM уровень - а там ставятся различные реализации JMS И AMQP.

продукта 2IS и Axelot рассматривать не буду - они больше пока ориентированы на 1Сto1C интеграцию.

@Yakimovich

После нескольких лет упражнений с разного рода шинами у меня сформировалась следующая позиция: делать адаптеры - долго, дорого и не всегда оправдано.

На данный момент я предлагаю использовать следующий подход: в разрабатываемых продуктах ориентироваться на SOA, а на шине организовывать только трансформацию форматов и оркестровку.

Часто бывает, что после того, как клиенты узнают о таком подходе, они не понимают, а зачем, собственно, им шина. Поскольку после приведения систем к SOA, все и так отлично работает.

Шина МОЖЕТ помочь с гарантированной доставкой, но, как написал Алексей, нужно, чтобы она могла работать с какой-либо очередью. Это могут практически все, но нужно понимать, что шина просто надстройка над очередью, и очередь может использоваться отдельно.

Если все-таки хочется шину, рекомендую посмотреть MuleESB и Fuse. Попробовать, что такое шина и понять основные принципы - MembraneESB.

WebSphere и wso2 не советую. У IBM довольно высокий порог входа, у wso2 куча вкусных плюшек, но есть проблемы со стабильностью. Плюс к этому, работа WebSphere очень сильно зависит от того, какую виртуальную машину Java вы выберете. Есть проблемы с утечками.

BizTalk - я бы вообще не рассматривал. Это решение для долгоиграющих процессов. Для реалтайма подходит чуть менее, чем никак.