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

11.09.2018      37576

В 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 5052 11.09.18 18:30 Сейчас в теме
Похоже что разработчики в 1с знают и про Hazelcast, видимо и про другие inmemory kv, умеют юзать эластик, знают про шардинг... Но суть дебилизма в том что это щачем то используется в сервисе для которого критична простота использования, а хайлоад и безотказность там не особо нужна. А вот сеансовые данные как хранились через одно место так и хранятся.... То же самое и с журналом регистрации... Ну как так :(
catv; kuzyara; user642047_ziborov.roman; Slava_prog; portwein; Scorpion4eg; ABudnikov; ixijixi; Kosstikk; TuneSoft; awk; JohnyDeath; Infactum; YanTsys; +14 Ответить
6. DonAlPatino 176 12.09.18 17:34 Сейчас в теме
Краткий перепост большой статьи на habr'е от Петра Грибанова... там и подробнее, и автор отвечает на вопросы.
viktor3d; +1 Ответить
7. TreeDogNight 22 24.09.18 06:37 Сейчас в теме
(6) Можете скинуть ссылку или название этой статьи?
8. DonAlPatino 176 24.09.18 12:09 Сейчас в теме
Оставьте свое сообщение

См. также

3 главных причины участвовать в конференции «Анализ и Управление в ИТ-проектах» по VIP-пакету

Новость Aнализ&Управление Мероприятия

Сегодня поговорим о VIP-тарифе, который предусматривает еще больше преимуществ, и расскажем, что входит в пакет.

сегодня в 17:30    33    user997184    0       

0

Выпуск новой редакции 1С:PLM 5 и начало продаж модуля PLM для 1С:ERP

Новость 1С:ERP Управление предприятием 2

Фирма «1С» сообщила об обновлении линейки решений 1С:PLM для автоматизации управления жизненным циклом изделия и инженерными данными. А также предупредила о снятии с продаж устаревших версий и скором прекращении их поддержки.

сегодня в 15:01    116    ЕленаЧерепнева    0       

1

Новинка на Инфостарт: онлайн-курс «Автоматизированное тестирование в 1С»

Новость Обучение Программист

6 мая запускаем новый курс от Инфостарт, где мы научимся пользоваться самым популярным и открытым фреймворком тестирования для платформы 1С:Предприятие 8 – Vanessa Automation.

сегодня в 13:00    145    AnastasiaKl    0       

2

Готова программа конференции «Анализ и управление в ИТ-проектах»

Новость Aнализ&Управление Мероприятия

Сегодня подводим итоги 2 тура голосования и публикуем список докладов и других активностей, вошедших в финальную программу конференции «Анализ и управление в ИТ-проектах».

вчера в 17:00    358    eselyanina    0       

16

Продлеваем прием заявок на конкурс «Современные возможности 1С: нетиповые интеграции и доработки»

Новость Сообщество

Заявки с вашими нетиповыми интеграциями продолжают поступать, поэтому мы ненадолго продлеваем прием. Теперь «заявиться» на конкурс можно до 20 апреля включительно.

17.04.2024    246    user997184    0       

1

Как использовать SmartWay в 1С для планирования командировок

Новость Сервисы ИТС

Smartway – решение для планирования и организации командировок, разработанный на базе российского ПО. Просто задайте направления и даты, а Smartway сравнит цены на билеты или гостиницы в режиме реального времени, предложит выгодные варианты

17.04.2024    309    user997184    0       

16

Расширяем возможности типового 1С-ЭПД: автозаполнение электронной транспортной накладной для нескольких реализаций

Новость Маркетплейс ЭДО

Из документа «Транспортная накладная», входящего в состав расширения «Мастер ТТН», теперь можно отправлять ЭТрН через типовую подсистему 1С-ЭДО, расширяя ее возможности автозаполнением всех требуемых реквизитов.

16.04.2024    334    Olga_Amelchenkova    0       

3

Приглашаем на первый бесплатный вебинар Комплексного курса по управлению ИТ-проектами

Новость Обучение Руководитель проекта

17 апреля стартует Комплексный курс по управлению ИТ-проектами. Курс начнется с бесплатного welcome-вебинара, где мы поговорим о компетенциях современного руководителя и расскажем подробно о программе курса.

16.04.2024    522    AnastasiaKl    1       

14

Обновлены материалы для подготовки к сертификации по 1С:ERP

Новость 1С:ERP Управление предприятием 2

Фирма «1С» доработала материалы для подготовки к тестированиям 1С:Профессионал и 1С:Специалист-консультант по конфигурации 1С:ERP Управление предприятием 2. С 26 апреля тестирование будет проводиться по обновленному комплекту вопросов.

16.04.2024    321    ЕленаЧерепнева    0       

1

Фирма «1С» возглавила ежегодный рейтинг франшиз по версии РБК

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

РБК ежегодно составляет рейтинг наиболее популярных российских франшиз. На протяжении многих лет фирма «1С» лидирует среди прочих предложений на рынке франчайзинга.

15.04.2024    340    ЕленаЧерепнева    0       

1

Фирма «1С» дополнила перечень продуктов, которые подорожают с 1 июля 2024 года

Новость

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

15.04.2024    1341    ЕленаЧерепнева    0       

1

Сегодня, в 12:00, стартует бесплатный вебинар Марии Темчиной по разбору ошибок в управлении ИТ-проектами

Новость Обучение Руководитель проекта

Успейте подключиться к онлайн-встрече, где на реальных кейсах мы разберем проблемные ИТ-проекты, узнаем, как избежать ошибок или как исправить совершенные.

15.04.2024    945    AnastasiaKl    0       

2

Обновление «1С:Документооборот КОРП 3.014»: очень много приятных мелочей

Новость

В релиз «1С:Документооборот КОРП 3.014» вошли улучшенные интеграции с 1С-сервисами: они расширяют возможности конфигурации. Улучшена функциональность самого продукта – разработчики добавили новые инструменты для работы с документами и файлами.

12.04.2024    1443    ЕленаЧерепнева    0       

2

Бесплатный онлайн-вебинар «1С:Аналитика – BI-система на платформе 1С»

Новость

Приглашаем на бесплатный вебинар по системе «1С:Аналитика», где мы поговорим о ее возможностях, расскажем реальные кейсы успешного внедрения системы, а также в формате круглого стола ответим на вопросы слушателей.

11.04.2024    1692    AnastasiaKl    1       

15

Отвечаем на вопрос: зачем публиковать свои решения в Базе знаний Инфостарт

Новость Сообщество

Если вы еще сомневаетесь, вливаться ли в наше сообщество, обязательно прочитайте эту статью.

11.04.2024    966    Sofya_Sukur    6       

25

Фирма «1С» актуализировала состояние плана задач для 1С:Предприятие 8.3.27

Новость Зазеркалье

Опубликован перечень задач, которые планируется реализовать для технологической платформы версии 8.3.27. Большая часть задач отмечена как выполненные, часть перенесена на следующий релиз, задач со статусом «в работе» в плане не осталось.

10.04.2024    661    ЕленаЧерепнева    0       

2

Учет по проектам в 1С Бухгалтерии v 2.9: главные обновления

Новость Маркетплейс

Учет рабочего времени по проектам и распределение заработной платы по отработанным часам в новой версии расширения «Учет по проектам в 1С:Бухгалтерии 3.0». Рассказываем об обновлениях подробнее.

09.04.2024    1033    user997184    0       

2

Сегодня стартует курс по 1С:Аналитике: успейте присоединиться

Новость Обучение

Сегодня, в 16:00 по Мск, состоится первый из четырех вебинаров онлайн-курса «Работа с 1С:Аналитика». Еще есть время записаться на обучение, где вы узнаете, как работать в системе и максимально использовать ее функционал.

09.04.2024    856    AnastasiaKl    0       

15

Бесплатный вебинар «Аналитика маркетплейсов из одного окна»

Новость Маркетплейс

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

08.04.2024    907    user997184    0       

13

12 апреля – бесплатный вебинар «Быстрый анализ медленных операций системы 1С»

Новость

12 апреля состоится бесплатный вебинар о том, анализировать проблемы производительности 1С с помощью программного продукта «Алькир». На вебинаре протестируем «Алькир» в работе и с его помощью проверим гипотезы при расследовании проблем.

08.04.2024    1185    user997184    1       

16

INFOSTART TECH EVENT 2024: 11 апреля меняем цены на участие

Новость Infostart Event Мероприятия

Осенняя конференция Инфостарт пройдет с 10-12 октября 2024 года. Чем ближе дата мероприятия, тем меньше скидка на покупку билетов на конференцию. Очередное плановое изменение цены произойдет 11 апреля.

08.04.2024    1022    AnastasiaKl    0       

16

Объявляем прием заявок в секцию «Открытый микрофон»

Новость Aнализ&Управление Мероприятия

Постоянная рубрика конференции «Анализ и Управление в ИТ-проектах» – «Открытый микрофон». Для вас – это возможность попробовать свои силы, продвинуть личный бренд и все-таки выступить с докладом, если вы не пройдете в финальную программу.

04.04.2024    996    user997184    0       

15

В сервисе «1С-Курьерика» для автоматизации собственной доставки обновлены тарифы

Новость Сервисы ИТС

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

04.04.2024    955    ЕленаЧерепнева    2       

2

Отвечаем на вопросы по работе с GitFlic – российским аналогом решений для хранения, обмена и работы с кодом

Новость

11 марта на Инфостарт прошел бесплатный вебинар-знакомство с продуктом GitFlic. GitFlic – первая российская платформа для удобной и быстрой работы с исходным кодом, и его хранения.

03.04.2024    1227    user997184    0       

1