Первоапрельский NODE.js или ESBа-неESBa
И опять я про свое. когда вся страна шутила, как по заказу, в моей голове решалась очередная проблема - каким образом интегрировать мобильные устройства на базе Android и iPhone: особенно с учетом тех знаний которыми мы обладаем об подобных платформах, но на соседних "площадках" от 1С.
Итак - откуда все это родилось. Рост мобильных устройств в мире спровоцировал нехватку специалистов, которые могут собственно под эти мобильные платформы программировать. А управленцы активно закручивали "гайки" - нам надо и срочно. Поэтому собственно на запрос рынка и начали появляться проекты типа PhoneGap и других, например на JS.
Есть у меня подход - перед тем как кому-нибудь чего-нибудь рассказать: попробовать самому. Так вот все оказалось очень просто. Платформа которая создана на платформе, которая создана на платформе для конкретного устройства - будет очень медленно работать, и для того чтобы эта связка вообще заработала, надо выкинуть как можно больше - то есть либо не использовать ненужные компонент, либо использовать максимально производительные.
Честный эскперимент
Выглядит как REST, но вызывает SOAP
Трансформация тяжёлых сервисов в легкий HTTP+JSON
Соответственно - все достаточно просто, простое преобразование из REST+JSON -> SOAP. Конфигурационные файлы достаточно просты. Однако для правильной настройки - необходимы следующие компетенции:

  • Java - как платформа
  • XML и JSON - как языки разметки структурированной информации
  • XSLT - как настройка правил трансформации
И в этом на самом деле кроется основная проблема такого решения, на рынке даже среди Java'программистов малое количество людей, кто понимает XSLT способы преобразования. Таким образом решение, в качестве готового достаточно жизнеспособно, но однозначно требует переосмысления перед фазой максимального развертывания для большого количества устройств.

Но вышеозначенная история показывает нам, что при наличии 1С программистов с документацией по 1С 8.3 и помощи одного Java специалиста нормального уровня можно построить жизнеспособное решение.

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

Но … Нам нужны Web программисты

Node.JS и 1С
Чтобы не расширять и без того получившийся длинным пост, попробуем немного ускориться
Итак, после того как вы закончите эксперименты с Мобильной платформой 1С и Membrane ESB первое что вы захотите (или захочет ваш заказчик), это PUSH от сервера своим мобильным клиентам. И в этом случае ваша проблема будет уже не на стороне мобильной платформы 1С 8.3, а на стороне сервера интеграции мобильных устройств.

А этот сервер должен быть:

В таком случае, как вы понимаете решается довольно большое количество проблем.

  • во первых довольно неприятно выставлять "наружу" SOAP Web сервисы от 1С
  • потенциал развития совершенно не зависит от конкретной платформы реализации мобильного приложения, сегодня это 1С, завтра PhoneGap, а потом отдельный штат Android/iOS программистов специализирующихся на NativeAPI.
И как обычно - домашнее задание:
как вызвать REST сервис из 1C мобильной платформы ?
как создать WebSocket соединение из 1С мобильной платформы в отдельном потоке ?

Поделиться