В «1С» рассказали о процессе разработки Системы взаимодействия

11.09.2018      33902

В 2016 году «1С» презентовала Систему взаимодействия (СВ). Этот платформенный механизм передает информацию между клиентскими приложениями и серверами 1С:Предприятия.

Онлайн-сервис СВ запустили весной 2017 года, а осенью того же года вышел отдельный продукт. Теперь разработчики раскрыли, как создавали Систему взаимодействия от постановки задачи до деталей реализации.

Для чего нужна система взаимодействия

Система взаимодействия предназначена для автоматизации бизнес-процессов предприятия или помощи в их осуществлении. Взаимодействия могут быть программными и интерактивными. К последним относится обмен сообщениями между пользователями 1С:Предприятия, тематические обсуждения, аудио- и видеозвонки другим пользователям.

СВ отличает отказоустойчивость и гарантированная доставка сообщений. Пользователям она доступна и как онлайн-сервис, и как тиражный продукт, развертываемый на серверных мощностях предприятия. При этом разработчики советуют небольшим компаниям пользоваться сервером СВ из облака, чтобы избежать лишних расходов. Крупным предприятиям рекомендуют установить собственный сервер СВ.

 

Обмен сообщениями в СВ

 

Постановка задачи

На этапе постановки задачи разработчики учитывали принципы создания бизнес-приложений 1С. Такие приложения на базе «1С:Предприятия» работают в клиент-серверной архитектуре: «СУБД – сервер приложений – клиент». Написанный на встроенном языке 1С код может выполняться на сервере приложений или на клиенте.

Только на сервере выполняется вся работа с прикладными объектами, там же реализована функциональность форм и командного интерфейса. На клиенте выполняются полученные формы, небольшие отчеты и работа с локальными файлами. Поэтому в прикладном коде обязательно указывать, где именно он будет выполняться.

Но здесь есть ряд ограничений: из клиентского кода вызвать серверный код можно, а из серверного кода клиентский – нет. Это значит, что передать сообщение (например, о готовности отчета) с сервера в клиентское приложение нельзя. Чтобы решить эту проблему, приходилось периодически опрашивать сервер и загружать систему лишними вызовами.

На помощь пришел механизм СВ и разработанный на его базе мессенджер. Он также необходим, если понадобится при поступившем телефонном SIP-звонке оповестить об этом клиентское приложение. После оповещения оно по номеру звонящего нашло его в базе контрагентов и показало пользователю информацию о звонящем контрагенте. Систему проектировали горизонтально масштабируемой, когда производительность увеличивается за счет разделения данных на множество серверов. 

 

Вызов серверной процедуры с клиента сработает, вызов клиентской процедуры с сервера — нет

 

Elasticsearch и Hazelcast  в СВ

При реализации механизма серверную часть СВ решили не встраивать в платформу «1С:Предприятие», создав отдельный продукт. В этом случае его интерфейс можно вызывать из кода прикладных решений 1С, обмениваясь сообщениями в рамках разных приложений (Управления Торговлей и Бухгалтерией, например).

Мессенджеру необходимы поисковый движок (если понадобится найти сообщение) и распределенное хранилище. При создании СВ разработчики отдали предпочтение платформе Hazelcast и поисковой системе Elasticsearch.

Hazelcast – платформа со встроенной памятью данных с открытым исходным кодом. Она поддерживает автоматическое обнаружение узлов и интеллектуальную синхронизацию. Среди положительных характеристик – масштабируемость, отказоустойчивость и распределенность. Разработчики «1С» использовали его в качестве хранилища пользовательских сессий, за которыми не нужно будет обращаться к базе, и в качестве кэша, где можно будет отыскать пользователя или нужное сообщение.

Поисковой системой выбрали Elasticsearch: подобные движки используются при сложном поиске по базе документов. В СВ Elasticsearch обеспечила быстрый и гибкий поиск с учетом морфологии. В индекс поисковой системы внесли корни слов и N-граммы. Пока пользователь набирает текст для поиска, Elasticsearch ищет его среди N-грамм. Так, поиск слова «тексты» в СВ будет осуществляться по любой из его частей, благодаря дроблению на N-граммы [те, тек, текс, текст, тексты, ек, екс, екст, ексты, кс, кст, ксты, ст, сты, ты].

 

Архитектура системы взаимодействия

 

Выбор СУБД

В качестве системы управления базой данных для СВ выбрали PostgreSQL, аргументируя выбор большим и успешным опытом работы с ней. Это ПО используется для структурированного хранения данных и получения доступа к этим данным с помощью SQL-запросов. Основные преимущества PostgreSQL – бесплатность и высокая скорость работы.

PostgreSQL необходимо масштабировать: для этого выбрали стратегию шардинга, в рамках которой информация из общей БД делится на блоки и распределяется по разным серверам. У СВ есть главная БД: она хранится в таблице роутинга с информацией о локации всех абонентских баз данных.

 

Распределение базы данных

 

Чтобы сообщения пользователей не терялись, базу данных поддерживают репликами: синхронной и асинхронной. В этом случае сообщения потеряются, только если произойдет одновременный отказ основной БД и ее синхронной реплики.

Тесты и эксплуатация

Перед выпуском каждый релиз СВ проходит нагрузочное тестирование. Команда разработчиков считает его успешно пройденным, когда:

  • тест после нескольких суток работы не дает отказов;
  • время отклика по ключевым операциям не превышает комфортного порога;
  • производительность по сравнению с предыдущей версией не ухудшается более чем на 10%.  

Тестовая база наполняется данными, а само тестирование проводится в трех конфигурациях:

  • стресс-тест;
  • только подключения;
  • регистрация абонентов.

За год эксплуатации разработчики не выявили серьезных проблем в работе онлайн-сервиса. Дистрибутив сервера Системы взаимодействия поставляется в виде нативных пакетов, а для Windows «1С» предоставляет единый инсталлятор. Он устанавливает сервер, Hazelcast и Elasticsearch на одну машину.


Автор:
Редактор


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Gureev 11.09.18 15:44 Сейчас в теме
А как он лицензируется? Как часть платформы? Дополнительно платить нужно?
2. YanTsys 12 11.09.18 16:35 Сейчас в теме
Выглядит как куча намеков на интересные возможности, но при этом непонятно есть они там или нет.

Например, вызов клиентских функция с сервера, система позволяет организовать прогресс-бар без того чтобы гонять форму на сервер и обратно?

Что там про телефонию, можно использовать систему как IP-АТС или речь идет только о взаимодействии с другим софтом?

Можно отправить сообщение только в рамках своего комплекса баз или по номеру ИТС отправить сообщение например пользователю 1с Газпрома? :))))
5. androgin 11.09.18 18:32 Сейчас в теме
(2) а) сервер отправляет клиенту оповещение с данными - клиент их обрабатывает.
б) можно сопоставить несколько баз и отправлять сообщения куда нужно.
3. Sbodrenko 11.09.18 17:23 Сейчас в теме
4. comol 4675 11.09.18 18:30 Сейчас в теме
Похоже что разработчики в 1с знают и про Hazelcast, видимо и про другие inmemory kv, умеют юзать эластик, знают про шардинг... Но суть дебилизма в том что это щачем то используется в сервисе для которого критична простота использования, а хайлоад и безотказность там не особо нужна. А вот сеансовые данные как хранились через одно место так и хранятся.... То же самое и с журналом регистрации... Ну как так :(
catv; kuzyara; user642047_ziborov.roman; Slava_prog; portwein; Scorpion4eg; ABudnikov; the1; Kosstikk; TuneSoft; awk; JohnyDeath; Infactum; YanTsys; +14 Ответить
6. DonAlPatino 170 12.09.18 17:34 Сейчас в теме
Краткий перепост большой статьи на habr'е от Петра Грибанова... там и подробнее, и автор отвечает на вопросы.
7. TreeDogNight 21 24.09.18 06:37 Сейчас в теме
(6) Можете скинуть ссылку или название этой статьи?
Оставьте свое сообщение

См. также

12-я конференция INFOSTART EVENT 2022 официально открыта!

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Друзья, коллеги, мы рады снова приветствовать вас на нашем ежегодном мероприятии – кого-то «лицом к лицу», а кого-то в онлайн-формате. Впереди вас ждут три дня, насыщенных информацией и общением с единомышленниками.

вчера в 16:48    1223    AnastasiaKl    2       

Фирма «1С» обновила вопросы для сдачи теста 1С:Профессионал по ЗУП

Новость 1С:Зарплата и Управление Персоналом 3.x ИТ-новость

Тест 1С:Профессионал по программе 1С:ЗУП в ближайшее время будет проходить по новым вопросам. Рассказываем, когда появится в продаже актуальный комплект вопросов для подготовки и когда будет прекращено тестирование по предыдущей версии экзамена.

вчера в 14:54    1103    ЕленаЧерепнева    0       

МИФ дарит участникам INFOSTART EVENT 2022 промокод на скидку 10%

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Еще один официальный партнер INFOSTART EVENT 2022 Saint-Petersburg – издательство МИФ. В этом году МИФ дарит участникам конференции промокод на скидку 10% и подборку мотивирующих книг.

вчера в 12:30    1012    user997184    0       

Вышла новая редакция решения 1С:Центр спутникового мониторинга ГЛОНАСС/GPS 2.0

Новость ИТ-новость Конфигурация

Фирма «1С» обновила прикладную конфигурацию для контроля за транспортными средствами. Разработчики добавили новые функциональные возможности, а также сообщили о планируемом прекращении поддержки предыдущей редакции.

05.10.2022    1428    ЕленаЧерепнева    0       

Компания «1С-Рарус» – официальный партнер INFOSTART EVENT 2022

Новость Инфостарт infostartevent ИТ-новость Мероприятия

В этом году впервые официальным партнером конференции стала компания «1С-Рарус». Лидеры отрасли 1С приглашают гостей мероприятия на свой стенд, где команда экспертов обсудит с коллегами внедрение передовых технологий и инструментов.

05.10.2022    1609    vikad    0       

GaGa Games дарит подарки самым активным участникам INFOSTART EVENT

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Еще один официальный партнер INFOSTART EVENT 2022 Saint Petersburg – компания настольных игр GaGa.ru! На конференции издательство GaGa Games подарит игровые наборы самым активным участникам. Рассказываем, как получить приз.

05.10.2022    1082    user997184    0       

Знакомимся с официальными партнерами INFOSTART EVENT: компания IBS

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Продолжаем знакомить участников с официальными партнерами конференции. Сегодня представляем IBS: компания помогает клиентам оптимизировать бизнес-процессы, создает системы управления данными, анализа и тестирования.

05.10.2022    1340    user997184    0       

ТОП-10 самых продаваемых разработок за сентябрь

Новость Инфостарт Infostart Software Partners ИТ-новость Маркет

Собрали в сентябрьском ТОП-10 самые продаваемые разработки на нашем маркетплейсе. Рейтинг постоянно обновляется, поэтому так важно следить за ним. Оставайтесь в тренде и отслеживайте потребности своих клиентов.

05.10.2022    1596    pvasiletc    0       

Изменения в расписании INFOSTART EVENT 2022

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Некоторые докладчики предупредили нас, что не смогут приехать в Санкт-Петербург. Из-за этого часть выступлений пришлось перевести в онлайн, а еще несколько докладов и мастер-классов – заменить. Рассказываем о том, что изменилось.

05.10.2022    2408    vikad    8       

«Вам чашечку чая или кофе»? Teatone и Neva Coffee – партнеры Infostart Event 2022

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Встречать каждый день конференции в бодром и хорошем настроении участникам помогут наши чайный и кофейный партнеры. Зарядитесь энергией с утра или приятно пообщайтесь с коллегами за чашечкой ароматного чая или кофе в свободное время.

04.10.2022    1571    AnastasiaKl    0       

Selectel – облачный партнер конференции

Новость Инфостарт infostartevent ИТ-новость Мероприятия

На INFOSTART EVENT 2022 Saint Petersburg одним из наших ИТ-партнеров снова стала компания Selectel. Рассказываем о компании и о том, с каким докладом и активностями она приедет на конференцию в этот раз.

04.10.2022    1680    AnastasiaKl    0       

Правительство утвердило новые правила аккредитации ИТ-компании

Новость Импортозамещение ИТ-новость

Минцифры разрабатывало документ с августа 2022 года. Теперь возможны два варианта аккредитации: для небольших и крупных ИТ-компаний. Также министерство разработало правила для стартапов и компаний с госучастием.

04.10.2022    2391    VKuser24342747    7       

Представляем партнеров INFOSTART EVENT 2022: компания «Уралхим»

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Пока участники пакуют чемоданы для поездки в Санкт-Петербург, а организаторы заканчивают подготовку, познакомимся с официальными партнерами конференции. В этом году участников ждут дополнительные активности и доклад от компании «Уралхим».

04.10.2022    2357    user997184    0       

«Единый семинар 1С»: рассказываем подробно о секции от Инфостарта

Новость Инфостарт ИТ-новость Сервисы

12 октября состоится «Единый семинар 1С» – бесплатное всероссийское онлайн-мероприятие от специалистов фирмы «1С», представителей ФНС, Минфина и ФСС. Инфостарт организует отдельный поток докладов с ответами на самые популярные вопросы от клиентов

04.10.2022    1844    user1763361    0       

Что делать, если не получается приехать на INFOSTART EVENT 2022? Купить онлайн-участие!

Новость infostartevent ИТ-новость Мероприятия

Осталось совсем немного времени, чтобы присоединиться к главному событию в сфере 1С. Если у вас не получается присоединиться к нам в офлайне, то мы ждем вас в качестве онлайн-участника. Напоминаем, что входит в этот пакет.

03.10.2022    4194    dklimchuk    7       

Компания КРОК – ИТ-партнер INFOSTART EVENT 2022 Saint Petersburg

Новость infostartevent ИТ-новость Мероприятия

КРОК представляет полный портфель ИТ-услуг в области системной интеграции, тиражируемых продуктов, управляемых В2В-сервисов. Компания работает на рынке уже более 29 лет и несколько раз получала награду от фирмы «1С» в номинации «1С:Проект года».

03.10.2022    1680    AnastasiaKl    1       

ФНС установила правила предоставления электронных счетов-фактур для операторов ЭДО

Новость ИТ-новость ФНС

В связи с требованиями к операторам ЭДО обеспечивать обмен счетов-фактур, в том числе корректировочных счетов-фактур в отношении товаров, подлежащих прослеживаемости, ФНС разработала порядок предоставления этих документов в налоговую.

03.10.2022    1962    VKuser24342747    0       

Sportmaster Lab – официальный партнер конференции INFOSTART EVENT 2022

Новость infostartevent ИТ-новость Мероприятия

6-8 октября 2022 года Sportmaster Lab выступит официальным партнером конференции Infostart Event 2022 Saint Petersburg. Стенд компании будет расположен на втором этаже отеля «Санкт-Петербург» рядом со стойкой регистрации.

03.10.2022    2952    eselyanina    1       

«1С:Проект года 2021»: жюри конкурса выбрало лучшие проекты на платформе 1С

Новость ИТ-новость

Стали известны итоги конкурса на самые масштабные и успешные внедрения платформы 1С в России и в мире. Рассказываем, какие проекты 1С за 2021 год признали лучшими.

03.10.2022    4249    ЕленаЧерепнева    3       

Тестирование 1С:Профессионал будет проходить на базе новой версии 1С:УНФ 3.0

Новость 1С:Управление нашей фирмой ИТ-новость

Фирма «1С» обновила версию теста для прикладного решения 1С:Управление нашей фирмой. Начиная со следующего месяца желающие получить сертификат 1С:Профессионал по данному продукту должны будут проходить тестовые испытания по новой версии – 1С:УНФ 3.0.

30.09.2022    2776    ЕленаЧерепнева    1       

Главный приз конференции INFOSTART EVENT 2022 – набор для умного дома

Новость Инфостарт infostartevent ИТ-новость Мероприятия

Наш призовой набор включает несколько полностью совместимых smart-устройств, которые освободят от рутинных забот и принесут радость своему владельцу. Розыгрыш набора для умного дома состоится на третий день конференции в Большом зале.

30.09.2022    4691    eselyanina    4       

Подводим итоги конкурса статей по переходу с системы SAP

Новость ИТ-новость

Месяц назад мы предложили участникам сообщества опубликовать на сайте статью про переход с SAP, чтобы получить возможность выиграть онлайн-участие в предстоящей конференции INFOSTART EVENT 2022. Объявляем победителей конкурса!

30.09.2022    3418    PVM007    0       

1С 8.3.22 – теперь в статусе рабочего релиза технологической платформы

Новость Платформа 1С v8.3 Зазеркалье ИТ-новость

Опубликовано обновление для технологической платформы 8.3.22. Улучшена производительность, появились новые методы работы с PDF, добавились возможности у расширений и системы взаимодействия. Рассказываем о главных изменениях в 8.3.22

29.09.2022    4853    ЕленаЧерепнева    21       

Расширение линейки поддерживаемых продуктов для интеграции с «Плати QR» (SberPay QR) от Сбера

Новость 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Розница 1С:Управление нашей фирмой 1С:Управление торговлей 11 Infostart Software Partners ИТ-новость Маркет

Недавно мы провели обзор решений Инфостарта для оплаты по QR-коду с помощью системы быстрых платежей и сервиса «Плати QR». Сегодня расскажем подробнее о расширении возможностей одного из продуктов подборки.

29.09.2022    3328    dpershin    0       

Фирма «1С» представила новое решение для автоматического обмена с ГИС ЖКХ

Новость ИТ-новость

«1С:ГИС ЖКХ Интеграция» позволяет максимально автоматизировать обязательную ежемесячную выгрузку сведений от управляющих и ресурсоснабжающих организаций в ГИС ЖКХ.

29.09.2022    3925    ЕленаЧерепнева    4