Как я вижу, единственное релевантное различие — это изображение, используемое для представления каждого из них.
Если есть какая-то разница между тем, пожалуйста, скажите мне, что.
Если они одинаковые, скажите, почему два понятия относятся к одной и той же функциональности.
- ОТВЕТЫ
- Ответ 1
- Ответ 2
- Ответ 3
- Сайт о внедорожниках УАЗ, ГАЗ, SUV, CUV, кроссоверах, вездеходах
- Конструкция автомобильной шины, каркас, брекер, протектор, боковины, борта покрышки автомобильной шины, назначение и устройство.
- Покрышка автомобильной шины.
- Камера (ездовая камера).
- Камерная автомобильная шина.
- Бескамерная автомобильная шина.
- Элементы конструкции автомобильной шины.
- Каркас покрышки.
- Брекер покрышки.
- В зависимости от материала корда автомобильные шины подразделяются на:
- Протектор покрышки.
- Плечевая зона протектора.
- Боковина автомобильной шины.
- Борт автомобильной шины.
- Сравнение ESB-решений, популярных на российском рынке
- Из чего состоит слой ESB
- Резюме
- Опыт внедрения ESB (интеграционной шины) в ПАО «Газпром нефть»
- О себе и о компании 2is
- О проекте
- Этапы проекта
- Интеграционные компоненты
- Внутреннее устройство шины данных
- Что дает такое описание метаданных (в виде объекта системы)?
- Порядок подключения новой системы к шине данных
- Правила маршрутизации в шине
- Тестирование
- Перспективы проекта. Планы развития «2iS:Интеграции»
- 📹 Видео
Видео:Микросервисы на пальцах. Брокеры, Kafka, RabbitMq, EventSourcing.Скачать
ОТВЕТЫ
Ответ 1
Шина сообщений подразумевает общий протокол, который говорит и понимается всеми участниками. В автобусе практически нет логики. Обычно сообщение пересылается во все подключенные системы.
Архитектура хаба и спицы (или «брокер сообщений» ) имеет центральную часть программного обеспечения, которая понимает отправленные на нее сообщения, может переводить их и пересылать их в системы, которым нужна информация.
Ответ 2
Хорошее объяснение mulesoft о различиях между Message Broker и Enterprise Service Bus —
Цитата из статьи: «Enterprise Bus. Хотя он (т.е. Message Broker) по-прежнему используется центральным компонентом маршрутизации для передачи сообщений от системы к системе, архитектура шины стремится уменьшить нагрузку на функциональность, размещенную на один компонент, распределяя некоторые задачи интеграции с другими частями сети.
Эти компоненты затем могут быть сгруппированы в различных конфигурациях через файлы конфигурации, чтобы максимально эффективно обрабатывать любой сценарий интеграции и могли размещаться в любом месте инфраструктуры или дублироваться для масштабируемости в больших географических регионах «.
Ответ 3
Сначала признаем, что это составленные термины, принятые из существующих метафор, как и большинство терминов, относящихся к домену. Никто не имеет права определять их, а мы просто делаем это, как мы (промышленность).
Метафора брокера отлично работает с макетом хаба и спицы. Метафора автобуса работает лучше в ситуации прямой адресации. Что мешает вашему клиенту отправлять сообщение одному из нескольких брокеров, сидящим на автобусе, хаб-спике или другим? Определения метафор начинают немного глупо.
Выясните, что вы хотите сделать, и выберите продукт, который делает это лучше всего — намек: он, вероятно, будет предоставлять функции как так называемых шинных, так и брокерских технологий.
Видео:Шины VS брокеры сообщений | KT.Team | Андрей ПутинСкачать
Сайт о внедорожниках УАЗ, ГАЗ, SUV, CUV, кроссоверах, вездеходах
Автомобильная шина, это сложное высокотехнологичное изделие. От конструкции и качества автомобильной шины во многом зависит комфортность и безопасность езды на автомобиле.
Видео:Что такое Apache Kafka за 5 минутСкачать
Конструкция автомобильной шины, каркас, брекер, протектор, боковины, борта покрышки автомобильной шины, назначение и устройство.
Автомобильные шины одни из немногих деталей автомобиля, при покупке которых автовладелец имеет большую свободу выбора и может проявить творческий подход. В настоящее время в продаже представлены сотни моделей автомобильных шин от десятков производителей.
Покрышка автомобильной шины.
Это упругая резино-кордная часть пневматической шины, воспринимающая тяговые и тормозные усилия и обеспечивающая сцепление резины с дорогой. Основными элементами покрышки являются:
— Каркас.
— Брекер.
— Протектор.
— Боковины.
— Борта.
Камера (ездовая камера).
Это резиновая кольцевая труба со специальным вентилем.
Камерная автомобильная шина.
Это покрышка в комбинации с камерой.
Бескамерная автомобильная шина.
Это покрышка не требующая камеры. Герметичность полости достигается особым строением самой покрышки и обода.
Элементы конструкции автомобильной шины.
Каркас покрышки.
Это важнейшая силовая часть автомобильной шины, обеспечивающая ее прочность, воспринимающая внутреннее давление воздуха и передающая на колесо нагрузки от внешних сил, действующих со стороны дороги. Задачей каркаса является поддерживание амортизационных свойств шины, а также удерживание в ней необходимого для этого количества воздуха.
Каркас состоит из одного или нескольких, наложенных друг на друга слоев обрезиненного корда. В зависимости от конструкции каркаса, размеров, допустимой нагрузки и давления воздуха в шине число слоев корда в каркасе может изменяться от 1 (в легковой) до 16 и более (в грузовых, сельскохозяйственных шинах и прочих).
Брекер покрышки.
Это часть автомобильной шины, состоящая из слоев корда и расположенная между каркасом и протектором шины. Он служит для:
— Улучшения связей каркаса с протектором.
— Предотвращает его отслоение под действием внешних и центробежных сил.
— Амортизирует ударные нагрузки.
— Повышает сопротивление каркаса механическим повреждениям.
В брекере нити корда в смежных слоях пересекаются друг с другом и с нитями корда соприкасающегося слоя каркаса. То есть расположены диагонально независимо от конструкции шины.
В зависимости от материала корда автомобильные шины подразделяются на:
— Автомобильные шины с текстильным брекером.
— Автомобильные шины с металлическим брекером.
— При использовании металлокорда и в каркасе — цельнометаллокордные.
Протектор покрышки.
Это наружная часть покрышки, представляющая собой массивный слой резины. С наружной поверхности протектор имеет рельефный рисунок в виде выступов и канавок (ламелей), так называемую «беговую дорожку». Рисунок рельефной части определяет приспособленность автомобильной шины для работы в различных дорожных условиях. От качества протектора зависит износостойкость шины и сцепление колеса с дорогой, а также уровень шума и вибраций.
Плечевая зона протектора.
Это часть протектора, расположенная между беговой дорожкой и боковиной автомобильной шины. Она увеличивает боковую жесткость шины, воспринимает часть боковых нагрузок, передаваемых беговой дорожкой, и улучшает соединение протектора с каркасом.
Боковина автомобильной шины.
Это часть шины, расположенная между плечевой зоной и бортом, представляющая собой относительно тонкий слой эластичной резины, являющийся продолжением протектора на боковых стенках каркаса и предохраняющий его от влаги и механических повреждений. На боковины нанесены обозначение и маркировка шин.
Борт автомобильной шины.
Это жесткая часть шины, служащая для ее крепления и герметизации (в случае бескамерной) на ободе колеса. Основа борта — нерастяжимое кольцо, сплетенное из стальной обрезиненной проволоки. Борт шины состоит из слоя корда, завернутого вокруг проволочного кольца, и круглого или профилированного резинового наполнительного шнура.
Стальное кольцо придает борту шины необходимую жесткость и прочность, а наполнительный шнур — монолитность и эластичный переход от жесткого кольца к резине боковины. С наружной стороны борта расположена бортовая лента из прорезиненной ткани, или корда, предохраняющая борт от истирания об обод и повреждения при монтаже и демонтаже.
Видео:Сервисная шина и система - кто должен инициировать сообщения? | Андрей ПутинСкачать
Сравнение ESB-решений, популярных на российском рынке
В конкурентной борьбе побеждает тот, кто умеет быстро масштабироваться, быстро реализовывать партнёрские проекты и вкладывать в рост минимум средств. Традиционное представление об интеграциях диаметрально противоположно этим приоритетам. Сроки и стоимость реализации непонятны, эффект непредсказуем, вместо ожидаемого преимущества — неопределённость.
Парадигма low-code гораздо ближе к приоритетам бизнеса. Программное обеспечение, которое работает в этой парадигме, позволяет ускорить разработку и внедрение новых систем, интеграций и фич в разы.
Один из продуктов, работающих в парадигме low-code, — ESB-система (сокр. от англ. enterprise service bus, рус. «сервисная шина предприятия»). ESB — это набор программного обеспечения, которое работает как единый центр для обмена сообщениями между информационными системами и приложениями. Сервисная шина позволяет легко настраивать маршруты движения сообщений, хранит историю сообщений, фиксирует путь каждого из них.
ESB не требует сложной и длительной разработки каждый раз, когда нужно соединить системы, которые изначально не спроектированы для совместной работы. Более того, бóльшая часть работы обеспечивается визуальными средствами разработки. При интеграции главным становится бизнес-анализ, а не технические аспекты этой интеграции.
ESB — это не монолитная система, а слой в IT-инфраструктуре компании, который состоит из нескольких продуктов. Каждый из них берёт на себя одну или несколько функций сервисной шины. В этой статье мы разложим слой ESB по функциям и расскажем, как эти функции реализованы в продуктах, популярных на российском IT-рынке.
Видео:Межсервисное взаимодействие. Очереди сообщенийСкачать
Из чего состоит слой ESB
Студия — графическая среда для разработки быстрых интеграций. Системы, параметры, действия визуализированы и максимально понятны. Функционала студии хватает на бóльшую часть действий, таких как передача и получение информации, преобразование и сбор атрибутов из одних потоков в другие. Здесь же можно задать параметры, которые ESB-шина должна отслеживать, считать ошибкой интеграции и пр. Если в рамках интеграции нужно уникальное действие, его можно написать парой строк на традиционных языках (например, Java) или специально разработанных.
Читайте также: Шины тунга зодиак 2 летние 185 60 r14
Без студии и, соответственно, без визуализации интеграций ESB не может считаться low-code решением.
Каждое из ESB-решений предлагает на выбор несколько возможностей размещения. Например, некоторые системы позволяют опубликовать интеграцию в частном облаке Kubernetes, OpenShift, Amazon вообще без настройки. Для публикации внутри вашего уникального кластера потребуется работа архитектора.
В этой статье мы разберём, как реализованы компоненты ESB в решениях, которые чаще всего предлагают на российском рынке: Talend, Mule, WSO2, Red Hat Fuse. Иногда разработчики дополняют список брокерами сообщений Apache Kafka (плюс Kafka Connect) и RabbitMQ, но эти два решения не являются ESB и рассматривать их в рамках данного разбора нецелесообразно.
Укажите свою почту, и мы будем присылать вам еженедельный анонс новых статей.
+ — студия есть в «коробке».
± — студия есть, но она сложнее в настройке и требует постоянного участия разработчиков, что идёт вразрез с парадигмой low-code.
Как видите, внутреннее логирование в ESB-системах реализовано практически идентично — с небольшими особенностями, индивидуальными для каждого из продуктов.
Дополнительно предусмотрено логирование во внешних системах, которые подключаются через коннекторы. Бизнес-аналитик должен прописать ключевые события в рамках интеграции, чтобы сообщения об этих событиях попадали в логи.
Логирование во внешней системе даёт ESB дополнительную гибкость. Скорее всего, у бизнеса масштаба enterprise в IT-архитектуре уже есть компонент для логирования, и системы не будут дублировать функции друг друга.
Видео:СПРОСИ ЭКСПЕРТА: Выпуск 1. Чем отличается шина данных от ETL?Скачать
Резюме
Talend, Mule, WSO2 позволяют решить проблему скорости проведения интеграций и соответствуют парадигме low-code.
Red Hat Fuse по функционалу близка к предыдущим трём продуктам, но уже не может считаться low-code решением: даже для рядовых операций здесь нужен именно разработчик. Однако в ней сохраняется принцип самодокументируемости.
Apache Kafka и RabbitMQ являются не ESB-системами, а брокерами сообщений. Их недостаточно, чтобы создать полноценный слой ESB, они не дают никаких преимуществ в плане упрощения интеграций и масштабирования, но при этом могут стать частью слоя ESB.
Понятно, что каждое внедрение индивидуально и должно учитывать особенности бизнеса, продуктовую и IT-стратегию. Но из существующих решений именно low-code позволяет быстрее всего проводить цифровую трансформацию, масштабироваться, интегрироваться с партнёрами. Поэтому компаниям, которые заинтересованы в быстром росте с сопутствующей оптимизацией затрат на разработку, мы рекомендуем именно low-code решения: ESB, BPMS, CRM.
Отдельно обозначим, что само внедрение low-code ESB происходит не мгновенно. Как и всякая масштабная интеграция, оно требует времени и ресурсов: затрат на команду разработчиков, на серверы (при необходимости) и т. д. В этом low-code решения ничем не отличаются от привычных. Экономия на разработке начинается только после их внедрения.
Видео:Кто такой БРОКЕР?Скачать
Опыт внедрения ESB (интеграционной шины) в ПАО «Газпром нефть»
Меня зовут Харитонов Михаил. Я – директор компании 2is, специализирующейся на системной интеграции.
Сегодня я хочу поделиться с вами опытом внедрения интеграционной шины, разработанной на 1С в компании «Газпром нефть». Я думаю, что это – чуть ли не первый проект, реализующий интеграционную шину на отечественном ПО в таких масштабах.
Видео:Интеграционные шиныСкачать
О себе и о компании 2is
Коротко о себе. Работал в компании «1С» в качестве руководителя направления интеграции. Собственноручно написал «Конвертацию данных» в первой и второй редакции, универсальные обмены, типовые бухгалтерские операции и многие другие универсальные механизмы.
- Компанию 2is я организовал в 2004 году, после того, как ушел из «1С». Возникли некоторые внутренние противоречия по развитию, захотелось быстрее и больше делать, все успевать.
- Компания специализируется на системной интеграции и консолидации. Любимые проекты – управленческий учет и финансы. Люблю двойную запись, регистр бухгалтерии и все, что с этим связано!
- Уже пять лет мы выпускаем продукт «2iS:Интеграция» – это фактически платформа для разработки сервисов по обслуживанию различных систем, баз, инфраструктуры, сбору отчетов и т.д. Это полноценная сервисная шина предприятия, которая позволяет понятным, стандартным образом подключать и разрабатывать свои сервисы для массового обслуживания баз, систем и управления ими.
- Судя по выступлениям на конференции, опять становится модной тема “экстремального программирования” (XP). Ничего там экстремального нет. Мы используем эту технологию с самого начала. “Парное программирование”, например, когда два программиста садятся и вместе пишут код – результат, конечно же, получается совсем другой. Это – синергия. Единственное, тяжело заставить их (программистов) это делать, но если получается, то результат превосходит все ожидания.
Видео:Apache Kafka урок 1. Зачем нужна, что это? RabbitMQ vs Kafka vs БДСкачать
О проекте
По нашему проекту внедрения:
- Пилотный проект мы выполнили в 2015 году на одном из дочерних подразделений компании. Суть сводилась к тому, что мы переключили существующие обмены на тестовой среде (порядка 25-ти потоков) на нашу централизующую систему. Произошло все это быстро и безболезненно – были только мелкие ошибки в прикладных решениях из-за невозможности установки COM-соединения, которые решались оптимизацией правил. Я хочу сказать, что этот кейс работает для большого количества компаний. Когда к нам обращаются с желанием упорядочить обмены между множеством баз, мы отправляем в ответ опросник в Excel, где нужно расписать: систему-источник, систему-приемник, правила, план обмена, расписания, проблемы. Сначала люди удивляются, что для пяти конфигураций используются более пятидесяти правил обмена, но когда они создают этот список, им становится понятно, сколько стоит все это сопровождать, обслуживать и обновлять. Поэтому один из кейсов – это просто переключение существующих обменов на единую систему, которая будет управлять запуском заданий, контролировать ошибки, присылать уведомления и т.д.
- Основная цель проекта, обозначенная в договоре – это обеспечение централизации управления.
Но фактической целью на этом проекте было – снизить стоимость интеграции, поддержки, сопровождения этих потоков, уменьшить количество людей сервисной поддержки, убрать «изобретение велосипедов» и разобраться в «зоопарке».
Поэтому мы приступили к разработке единых стандартов и методик:
- по подключению новых систем к шине;
- по модификации существующих обменов;
- по формализации описаний форматов для всех систем в единый.
Когда мы начинали работать с разными разработчиками разных систем – все делали кто во что горазд: кто-то перечень полей пришлет в тексте на двенадцать страниц, кто-то – в HTML, кто-то – в Excel. В результате мы привели все к стандарту – Excel-форма плюс XML-схема (XSD). Других стандартов нет. Это дисциплинирует и упрощает работу.
В нашем пилотном проекте заказчик специально выбрал такой интересный набор – это несколько целевых систем (в том числе не 1С):
- «1С:УПП Битумные материалы»;
- «1С:ERP Смазочные материалы»;
- Самописная система диспетчеризации автотранспорта;
- 3 самописные базы на Firebird SQL для организации АРМ «ОТСД» (расшифровывается как «Оформление товаросопроводительных документов»). Что касается Firebird SQL, то эта СУБД приятно порадовала – бесплатная, легкая, быстро работает.
- И, конечно, главная система заказчика – это SAP. Она подключалась к шине, причем не сама, а через свою шину, брокер сообщений SAP PO. Надо сказать, что порадовала дисциплина и проработка всех подключений у SAP. Есть чему поучиться 1С консультантам – люди не усложняют себе жизнь на ровном месте.
По передаваемым данным в этих системах фигурировало около 100 типов для всех систем. Понятно, если там есть одна разгрузочная разнарядка, значит, для нее будет у каждой системы свой формат, свой тип.
Видео:Кто Такой Таможенный Брокер | Виды Таможенных БрокеровСкачать
Этапы проекта
По этапам все по классике, никаких Agile.
- Первый этап, самый сложный, заключался в написании технического проекта и спецификации на каждую систему. Этот этап длился с января по февраль. Акт за первый этап нам подписали в апреле, хотя закончили в феврале.
- Параллельно вовсю кипела разработка в 1С и написание программы методики испытаний, поэтому второй этап прошел легко.
- С тестированием тоже проблем особых не было, разве что были трудности с придумыванием эффективных способов провести нагрузочное и пользовательское тестирование.
- Большое количество ошибок прикладного рода всплыло на этапе опытно-промышленной эксплуатации. Разумеется, мы постарались заранее предусмотреть все возможные риски.
- На одной из систем использовался откат на старый механизм обмена, т.е. договорились, что если за два часа продуктивный обмен не восстанавливается, то мы его выключаем и включаем старый механизм.
- Также на Firebird SQL параллельно работали и старый и новый режимы обмена. Старый обмен работал через FTP, куда выгружались текстовые файлы, а для работы использовался уже новый режим. Проблем не возникло, поэтому старый просто выключили, остался новый.
- Были ошибки, которые не удалось предусмотреть в сценариях пользовательского тестирования. Например, если документ помечен на удаление, то, значит, он должен себя вести по-особенному – этот момент не был протестирован.
Читайте также: Рейтинг лучших моделей шин
Видео:Почему технари против middleware, ESB, брокеров? | kt.teamСкачать
Интеграционные компоненты
Подробнее об интеграционных компонентах:
- Для подключения к конфигурациям 1С была разработана встраиваемая подсистема «Агент подключения к шине», которую можно объединить с любой конфигурацией в пять шагов – любой 1С-ник за десять минут справится со встраиванием этой подсистемы. В дальнейшем мы планируем ее сделать в виде расширения – ждем версию 8.3.11, где обещают готовую механику. В подсистеме есть:
- Справочник по настройке узлов обмена – узлы можно привязать к любым планам обмена и к любым уже существующим узлам, т.е. переключить на шину. Допустим, был какой-то обмен по плану обмена, взяли на шину – переключили узел.
- Журнал регистрации событий по обмену – отдельный по каждой системе. У заказчика было требование, чтобы система обладала информацией о том, как у нее проходят обмены, длительность, успешно или нет, есть ли ошибки.
- Было много дебатов с заказчиком по поводу хранения в подсистеме правил обмена. По-хорошему, правила должны храниться в единой базе, в центре, версионироваться, предоставлять доступ под определенными ролями и учетками в шине, обновляться по понятному регламенту, чтобы один набор правил мог использоваться для большого количества баз и систем. Но нам не удалось убедить отдел безопасности, и заказчик все-таки захотел хранить правила на стороне каждой системы. Это другой взгляд на вещи, когда каждая система – это свой мирок, в который нельзя давать никому вмешиваться извне. Поэтому по согласованию с заказчиком правила обмена для каждой системы тоже хранятся во встраиваемой в нее подсистеме.
Для подключения к не 1С-системам в шине использовался WSDL веб-сервис, содержащий две универсальные операции:
- PostData (поместить данные);
- И GetData (получить данные).
Видео:Что означает маркировка на шинах! Значение цифр и букв на резине.Скачать
Внутреннее устройство шины данных
Так выглядит веб-сервис для подключения любых систем к сервисной шине в конфигураторе – входящие (in), выходящие (out) параметры (входы, выходы).
Это – спецификация всех параметров операции GetData веб-сервиса шины. Когда вызывается веб-сервис, передается идентификатор отправителя или получателя узла обмена.
- Для 1С узел обмена – это узел любого плана обмена.
- В SAP узел обмена – это тип, т.е. на каждый тип свой канал, свой интерфейс, свой отдельный веб-сервис, свой разработчик. Поэтому сколько типов, столько каналов обмена с SAP.
Задача шины в первую очередь – принимать данные и отдавать их «брокеру сообщений».
Поток данных передается в произвольном сжатом формате – это может быть XML, текст, что угодно – упакованное и сжатое. Предполагается, что принимающая и отправляющая стороны в зависимости от идентификатора узла знают, как этот пакет проверить, распаковать и как его обработать.
По устройству метаданных в шине есть много деталей и внутренних «фишек».
- Справа на слайде описываются классификаторы и все метаданные инфобаз – их конфигурации, все поля и свойства.
- Слева – основное ядро. У нас есть:
- Описание инфобаз;
- Настройки узлов обмена для каждой инфобазы – узлов может быть много, они привязываются к планам обмена;
- Правила маршрутизации объектов в шине, т.е. объект приехал, настраиваем при каких условиях этот объект нужно преобразовать и передать другим системам, системам подписок;
- Конвертация в самой шине между разными форматами;
- Схемы XSD, описание форматов систем;
- Два регистра для хранения всех сообщений – принимаемые сообщения обмена и отправляемые сообщения обмена и сообщения обмена данными. Сами сообщения упакованы в пакеты. С помощью PostData данные получили, сделали запись в принимаемых сообщениях. С помощью GetData данные отправили – появилась запись в отправляемых сообщениях, и в тот момент, когда система забирает уже подготовленный пакет, у записи появляется признак, что она отправлена, дата отправки, статус.
- Журналы регистрации событий в привязке к соответствующим метаданным.
Здесь показаны вспомогательные сервисные объекты метаданных.
Основной перечень сервисных метаданных, используемых в шине.
Подключение любой новой системы к шине выглядит так, как показано на слайде.
На каждую подключаемую к шине систему — создаем подсистему, например, назовем ее шдОбмен_1С_ERP_СМ.
Также создаем в шине план обмена – в данном случае, шд1С_ERP_СМ. Этот план обмена будет регистрировать в шине те объекты, которые нужно передать этой подключаемой системе. Узлов обмена с этой системой может быть много, т.е. сколько нам каналов обмена с данной системой нужно, столько узлов и создаем. Например, по одному узлу — справочники, по другому — документы, и отдельно, например, логи и журналы по разным расписаниям. Или, как по классике — два узла — оперативный и неоперативный.
Дальше – самое интересное. Мы описываем в шине метаданные этой системы – т.е. то, в каком формате эта система хочет помещать и забирать данные из шины. Это, пожалуй, ключевой момент и главное удобство этой методики и схемы.
Мы можем в шине описать формат, как удобный для какой-то любой системы (конкретно здесь про SAP идет речь).
А также можем описать универсальный формат типа EnterpriseData. Например, бизнес-аналитики пяти систем договорились использовать для описания контрагента единый формат – 55 определенных полей. Сформулировали этот единый формат, описали его здесь в метаданных шины – и теперь системы будут получать и забирать данные в этом формате.
Видео:Кто такой таможенный брокер и зачем он нуженСкачать
Что дает такое описание метаданных (в виде объекта системы)?
Если говорить о SAP и каких-то других системах (не 1С), то они работают чаще всего по схеме XML (XSD-схеме). Известно, что со схемами XML в 1С все хорошо, более того, для каждого объекта, описанного в метаданных, можно автоматически получить его схему XML, сформировать для него объект XDTO, записать этот объект в текст XML по соответствующей схеме. Если у нас объекты так хранятся и получаются, мы без программирования можем их сериализовать и десериализовать в XML, JSON и т.д.
На скриншоте вы можете увидеть «Заказ клиента», метаданные которого описаны, подстраиваясь под SAP. Как вы видите, всем реквизитам даны замечательные русские названия, но в комментарии к каждому реквизиту записаны английские восьмисимвольные имена полей в SAP.
Сделали еще процедуры, которые, кроме обычной сериализации в XML, делают прямой mapping – если у поля указан английский комментарий, то они создают результирующий XML в английских терминах, т.е. есть переключатель.
Получается, что этим решением мы накрываем любые системы, которые умеют работать с XML\JSON, и программисты которых умеют что-то делать со схемами. Хотя конкретно здесь, в этой настройке, программировать по схеме ничего не нужно.
Получается, что любые метаданные, структуры чужих систем мы привели к 1С, и теперь любой 1С-ник напишет обмен между SAP, Scala и т.д. и 1С, потому что ему нужно всего-навсего написать правила конвертации между этими объектами (мы их называем транспортными) и объектами подключаемой системы.
Либо они могут ложиться «один в один», без программирования по XDTO (XSD-схеме), либо можно написать правила конвертации, которые из подключаемой 1С-системы преобразуют данные в эти форматы. А эти форматы сразу заберут другие системы: SAP и прочие без программирования.
Читайте также: Термопресс для варки шин
Также обычными правилами конвертации мы можем преобразовывать форматы разных систем в самой шине. Представим себе, что мы в метаданных напишем справочники «Контрагенты_БП», «Контрагенты_УТ», «Контрагенты_УПП» – пять справочников добавим со своей структурой, опишем. Достаточно написать правила преобразования, которые будут применяться внутри шины, и все это будет работать. Одна система прислала данные, появился новый элемент справочника «Контрагенты_БП». Система понимает, правила настроены, что его нужно еще в «Контрагенты_УТ» передать, она делает конвертацию по обычным правилам КД2 из одного формата в другой. Это изящное решение позволило нам накрыть весь спектр любых систем и форматов использованием единого инструментария — правил обмена, разработанных в “1С:Конвертация данных”.
Видео:Урок 1 - Кто такой брокерСкачать
Порядок подключения новой системы к шине данных
Итак, еще раз по порядку подключения:
- описываем метаданные;
- делаем правила конвертации;
- настраиваем узлы, расписание, и обмены работают.
Варианты разбора и передачи сообщений:
- для систем на 1С – правила конвертации;
- для других систем – схема XSD, т.е. используется объект XDTO.
Также используется «симметричная передача» – мы так ее назвали. В этом случае никакого парсинга и преобразования пакетов в самой шине не производится, т.е. реализуется обмен «точка-точка», либо возможность «один ко многим». Одна система кинула в шину пакет, шина его никак не обрабатывает, по отправителю и по типу канала понимает, что его нужно, например, раздать трем системам, сразу перекладывает его из регистра принимаемых сообщений в три записи регистра отправляемых, и принимающие системы этот пакет забирают.
На слайде описаны преимущества такого подхода описания метаданных.
Видео:Грузовые шины - INFINITY Cross-Winter KWD600 для Ведущей осиСкачать
Правила маршрутизации в шине
В правилах маршрутизации мы можем прицепиться к узлу-отправителю и к типу объекта, а также можем дописать дополнительные условия по реквизитам – например, если организация такая-то, то ей нужен узел базы такой-то, или, если склад такой-то, то ему нужен вот этот объект – используется подписка записи.
Видео:Шины RunFlat. Что это такое и зачем они нужны?Скачать
Тестирование
Нагрузочное тестирование. Мы разработали два сценария по основным моментам, в которых сомневались.
- Первый тест – это приемка/отправка пакетов сообщений, т.е. фактически, это тестирование платформы 1С на уровне работы веб-сервиса, проверка способности 1С одновременно принять много запросов с разным объемом и записать их в свои таблицы и регистры.
- Второй тест – это внутренняя обработка сообщений в шине, т.е. работа регламентных заданий. Здесь время зависит от сложности трансформаций и обработки объектов. Одно дело – сериализовать \ десериализовать объекты по схеме, другое дело – преобразовать объекты по правилам конвертации. Разница в три-пять раз.
Сценарное тестирование
Сценарии написали по классике – таблички в Excel, на каждый тип объекта своя табличка, где расписываются все шаги бизнес-процессов работы с объектами для различных ролей пользователей. Автоматически прогоняется тест, где пользователь с определенной ролью создает объект, получает результат, этот результат сверяется с эталоном. Но работает сей подход не очень хорошо, пользователи находят много другого, чего не было учтено в СИТ-ах (сценариях тестирования).
Тестирование одновременных вызовов
Производительность сильно зависит от версии платформы. Когда мы начинали тестировать, использовалась одна версия платформы, и все падало на 5-6 вызовах. После того, как мы платформу обновили, произошла очень большая оптимизация. На текущий момент производительность следующая:
- В одну секунду 23 вызова «Поместить», т.е. шина в секунду записывает 23 пакета. Причем, производительность не зависит от объема пакета – при увеличении или уменьшении мегабайт, передаваемых в пакетах, особой разницы мы не нашли.
- Получение данных в секунду поменьше – семь вызовов.
На ближайшие перспективы эта производительность заказчика устраивает. Понятно, что это можно масштабировать.
Говоря про масштабирование, мне шина иногда представляется, как матрица из большого количества кубиков, которые выстроены, например, в линеечку, а линеечка – это сервера. При необходимости такие шины можно размножать – если сервера не хватает, то проще поставить рядом с ним второй такой же маленький, повесить на него вторую шину и развести потоки, например, по типам данных, как учил SAP – одна шина обрабатывает справочники, другая – документы. Настройки потоков можно копировать между базами. Это как 1СFrеsh-архитектура – захотели, слили две базы, захотели, разделили. Также с шинами. Получается утилитарная технологическая вещь.
Железо использовалось обычное, среднее. Тестовый стенд далеко не идеален, на втором сервере было развернуто несколько различных систем, плюс шина, плюс веб-сервер.
Соответственно, результаты теста были ухудшены неоптимальной конфигурацией.
Тестирование скорости обработки данных в шине
Запускались параллельные регламентные задания от 1-го до 50-ти, которые выполняли обработку пакетов, а именно, распаковывали пакеты по 1000 объектов в каждом, и записывали эти объекты в соответствующие справочники или документы (в транспортные объекты шины).
Средняя скорость обработки для одного потока – 100 объектов в секунду.
А для 50 параллельных потоков – 1000-1100 объектов в секунду.
Понятно, что там идет нелинейная зависимость. Мы достигали ее насыщения – где-то 50 при данном железе уже не дает нужный прирост. Нет смысла так выжимать при таком железе.
Производительность для требований заказчика нормальная, все устроило. Тесты приняты. Сбоев и падений не зафиксировано.
В техническое задание входило много различных требований по контролю, мониторингу, безопасности и тиражированию.
На слайде можно увидеть, сколько разных механизмов использовалось. Даже делали увязку двух баз (серверов) Интеграции: основная и резервная (т.е. две базы зеркалируются) – если что-то случается с одной, все переключается на вторую (непрерывный обмен). Возможность построения таких интеграционных кластеров нами опробована, работает хорошо.
WMI-счетчики снимают информацию с серверов, можно увязать появление пиков загрузки процессора и, например, динамически уменьшить скорость обработки и количество параллельных регламентных заданий. То же самое с памятью, но это высший пилотаж настройки.
Очень хорошо себя зарекомендовали возможности COM-соединений – мы «испахали» их вдоль и поперек. Именно технология DCOM позволяет масштабировать выполнение задач на разных серверах. Обычных задач, реализованных с помощью обычных 1С-ных обработок, запускаемых в нужных нам базах по расписанию. Благодаря подключению и настройке DCOM на удаленных серверах можно распределить тяжелые операции по набору серверов. Это если мы говорим про различные произвольные управляющие и интеграционные сервисы.
Видео:Что означает МАРКИРОВКА НА ШИНАХ / Значение всех цифр и букв на резинеСкачать
Перспективы проекта. Планы развития «2iS:Интеграции»
Перспективы
Проект сдан, сейчас мы занимаемся тиражированием подключения разных информационных систем к шине. Работа интересная, потому что часть подрядчиков – франчайзи или кто-то другой, кто занимается разработкой 1С для заказчика, и сейчас им нужно подключаться к шине. Мы смотрим, как наши методики и регламенты работают на большом спектре интеграторов, будь то франчайзи, штатная сервисная поддержка или ИТ-отдел.
У нас есть проект ТЗ на подключение к шине систем управления технологическими процессами. Это весовые комплексы, датчики, насосы. Вопрос изучен, все готово, скоро будем подключать. Тоже хороший опыт. Но это отдельная история.
Будем делать «Агент обмена с шиной» в виде расширения, чтобы это все внедрялось максимально легко, без снятия конфигураций 1С с поддержки.
Очень много в последнее время запросов по MDM. У нас есть хорошие кейсы. Как правило, внедрение шины связано с желанием упорядочить инфраструктуру, навести порядок в справочниках, внедрить систему BI. А для того, чтобы внедрить систему BI, должны быть единые справочники и единые идентификаторы, поэтому это взаимосвязано. MDM и BI притягивают шину. Эти вещи очень сильно связаны.
И недавно вышла финальная 1C:Enterprise Development Tools – будем смотреть инструментарий, оцениваем возможности применения.
Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2017 COMMUNITY. Больше статей можно прочитать здесь.
В 2020 году приглашаем всех принять участие в 7 региональных митапах, а также юбилейной INFOSTART EVENT 2020 в Москве.
- Свежие записи
- Нужно ли менять пружины при замене амортизаторов
- Скрипят амортизаторы на машине что делать
- Из чего состоит стойка амортизатора передняя
- Чем стянуть пружину амортизатора без стяжек
- Для чего нужны амортизаторы в автомобиле
📹 Видео
Кто такой брокер и какие у него функции? Финансовая грамотность [FIN-RA]Скачать
Укрощение шины данных. Как наладить связь между сервисамиСкачать