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

11.09.2018      37548

В 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 4975 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 175 12.09.18 17:34 Сейчас в теме
Краткий перепост большой статьи на habr'е от Петра Грибанова... там и подробнее, и автор отвечает на вопросы.
viktor3d; +1 Ответить
7. TreeDogNight 22 24.09.18 06:37 Сейчас в теме
(6) Можете скинуть ссылку или название этой статьи?
8. DonAlPatino 175 24.09.18 12:09 Сейчас в теме
Оставьте свое сообщение

См. также

7 декабря: бесплатный вебинар по 1С:Совещание с Глебом Архангельским

Новость

7 декабря на Инфостарт состоится открытый вебинар по работе с решением 1С:Совещание. Спикер вебинара – Глеб Алексеевич Архангельский, ведущий российский эксперт в сфере личной и бизнес-эффективности.

01.12.2023    206    user997184    0       

2

Конференция «Анализ и управление в ИТ-проектах»: трендовые темы секций для руководителей

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

Сегодня познакомим с темами секций «Управление проектом», «Управление продуктом», «Soft skills, управление командой проекта».

01.12.2023    228    eselyanina    0       

3

Трендовые темы для докладчиков конференции «Анализ и управление в ИТ-проектах»: секции для аналитиков

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

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

30.11.2023    340    eselyanina    0       

17

Мы изменили формат тг-группы Infostart Friends, и вот что из этого получилось

Новость Инфостарт Сообщество

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

29.11.2023    677    user997184    2       

23

«Единый семинар 1С» в декабре: регистрируйтесь с Инфостарт и получайте подарки

Новость Бухучет Сервисы ИТС

13 декабря 2023 года фирма «1С» проведет Единый семинар для бухгалтеров и руководителей: на семинаре расскажут о последних изменениях в учете и отчетности, поделятся новым о возможностях программ 1С и сервисов.

29.11.2023    456    user997184    1       

15

Бесплатный мастер-класс по управлению рисками уже сегодня

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

29 ноября в 14:00 подключайтесь к онлайн-вебинару Марии Темчиной, который открывает серию мастер-классов по управлению рисками (1С:ТКВ+PMBOK Guide).

29.11.2023    220    dklimchuk    0       

2

Используйте 1С:ИТС ПРОФ, регистрируйтесь в акции и получайте подарки

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

Фирма «1С» объявила о старте традиционной ежегодной акции «Зима подарков». Каждый подписчик ИТС ПРОФ, который зарегистрируется в акции, получит подарки. Также запланирован розыгрыш трех ноутбуков и 500 подарочных карт по 2000 рублей.

28.11.2023    320    ЕленаЧерепнева    0       

1

Бесплатный вебинар по ERP-tools: изучаем систему для комфортного управления большими командами и сложными проектами

Новость

4 декабря на Инфостарт состоится бесплатный вебинар по работе с ERP-tools. На вебинаре поработаем с ERP-tools – системой по управлению проектами на 1С.

28.11.2023    1060    user997184    0       

16

Может ли ИТ-компания с госучастием применять льготные тарифы страховых взносов

Новость ИТ-компания ИТ-льготы Минфин Новость

Минфин разъяснил, при каких условиях ИТ-компания с госучастием может применять пониженные тарифы страховых взносов.

28.11.2023    273    user1915669    0       

1

Готовый комплекс решений для автоматизации ТСЖ и УК: можно попробовать бесплатно

Новость Обзор готовых решений

«Формула ЖКХ» – комплексное решение для автоматизации основных процессов в ТСЖ и УК. Продукт включает в себя конфигурацию 1С для ведения учета, мобильные приложения для председателей и обходчиков, а также готовый сайт с личными кабинетами жильцов.

28.11.2023    322    ЕленаЧерепнева    0       

2

Уже завтра стартует новый курс Марии Темчиной: «Управление рисками. Практика применения в работе»

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

За четыре мастер-класса вы создадите комплект документов по управлению рисками на примере конкретного кейса внедрения продукта 1С. В основе обучения – 1С:Технологии корпоративного внедрения (1С:ТКВ) с учетом рекомендаций из PMBOK Guide и советов из опыта экспертов.

28.11.2023    382    dklimchuk    0       

15

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

Новость Аналитика ФинОфис

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

27.11.2023    379    user997184    0       

17

Онлайн-курс «1C:Предприятие для программистов: Запросы и отчеты»: старт сегодня

Новость Обучение, бизнес-тренинг, курсы Обучение Программист

На курсе участники займутся разработкой запросов и отчетов, работающих на платформе «1С:Предприятие» в рамках различных прикладных решений. Вместе с преподавателем разберут типовые примеры по написанию запросов и реализации отчетов.

27.11.2023    513    dklimchuk    0       

15

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

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

С 1 декабря скидка на участие в конференции «Анализ и Управление в ИТ-проектах» станет меньше: у вас еще есть время забронировать билеты по выгодным тарифам.

27.11.2023    327    user997184    0       

2

Подборка видеокурсов от Инфостарт

Новость Обучение, бизнес-тренинг, курсы

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

24.11.2023    777    dklimchuk    0       

2

Бронируйте проживание на конференцию «Анализ & Управление в ИТ-проектах»

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

С 30 мая по 1 июня 2024 года в Санкт-Петербурге состоится вторая конференция Инфостарт, посвященная анализу и управлению в ИТ-проектах. Оргкомитет уже начал подготовку и позаботился о важном: комфортном размещении участников конференции.

24.11.2023    512    user997184    3       

16

ФинОфис и Прайм Финанс создали совместную Проектную группу по автоматизации финансов

Новость ФинОфис

Подразделение Инфостарт.ФинОфис и компания Прайм Финанс объявляют о сотрудничестве в рамках реализации на рынке нового, комплексного подхода к проектам по автоматизации финансового учета. 

23.11.2023    508    user997184    0       

26

Будьте эффективнее с помощью Infostart Toolkit: делимся видеозаписью вебинара и скидкой на инструмент

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

21 ноября состоялся открытый вебинар по работе с Infostart Toolkit: на онлайн-встрече подробно рассказали об этом наборе инструментов для эффективной разработки в 1С.

23.11.2023    1005    user997184    7       

3

На Инфостарт пройдет бесплатный мастер-класс по управлению рисками

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

29 ноября в 14:00 подключайтесь к онлайн-вебинару Марии Темчиной, который открывает серию мастер-классов по управлению рисками (1С:ТКВ+PMBOK Guide).

23.11.2023    467    dklimchuk    0       

1

Практическая конференция «Анализ и управление в ИТ-проектах 2024»: как подать заявку на доклад, сроки голосования

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

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

22.11.2023    664    eselyanina    0       

17

Подводим итоги вебинара «ЦИФРОВОЕ СНАБЖЕНИЕ»: отвечаем на вопросы о продукте и делимся записью встречи

Новость

17 ноября Инфостарт провел бесплатный онлайн-вебинар по программному продукту «ЦИФРОВОЕ СНАБЖЕНИЕ». На вебинаре подробно рассказали о продукте, продемонстрировали функциональность решения.

22.11.2023    567    user997184    0       

17

Последний шанс записаться на курс по разработке запросов и отчетов для прикладных решений. Старт обучения – 27 ноября

Новость Обучение, бизнес-тренинг, курсы Программист

Курс по разработке запросов и отчетов – второй этап в траектории развития 1С-Разработчика. Курс предусматривает углубленное изучение тем «Язык запросов» и «Отчеты», которые рассматриваются в рамках «Базового курса для начинающих 1С-программистов».

22.11.2023    792    dklimchuk    0       

16

Налоговый мониторинг: одно из условий участия – интеграция с АИС «Налог-3»

Новость Интеграция ФНС

С 1 января 2026 года взаимодействие с ФНС при проведении налогового мониторинга не предусматривает подключения по ТКС. К этому сроку организации должны обеспечить автоматическую интеграцию своих учетных систем с АИС «Налог-3».

22.11.2023    611    ЕленаЧерепнева    0       

2

Есть проект на GitHub? Подавайте заявку на Infostart Awards!

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

Остался ровно месяц до того, как мы закроем прием заявок на Infostart Awards 2023. Если ваш проект на GitHub в 2023 году активно развивался и вы хотите рассказать о своих достижениях сообществу 1С – вы тоже можете подать заявку. 

21.11.2023    691    user997184    0       

17

«Черная пятница» на Инфостарт.Маркетплейс – до конца ноября покупайте готовые решения со скидкой до 50%

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

С 20 по 30 ноября на Инфостарт действует акция на покупку готовых решений Маркетплейса. Цены на некоторые программные продукты, участвующие в акции, снижены вдвое.

20.11.2023    718    AnastasiaKl    1       

3