yuribonder.com

Экономика торговли.
»

Архитектурные стили и РЭСТ

  1. Вступление Реализация последовательного подхода в ваших проектах внедрения является довольно сложной...
  2. Архитектурные стили
  3. Теоретическое обоснование
  4. Бизнес-услуги
  5. Модель предметной области
  6. Архитектурные стили для доменной модели
  7. Технический сервис
  8. Роль технических служб
  9. Бизнес-услуги ⇄ Технические услуги
  10. Виды технических услуг
  11. Архитектурный стиль для всех технических служб
  12. Интерфейс подключения
  13. Рамочные руководящие принципы
  14. Постоянство подключения
  15. Технические компоненты

Вступление

Реализация последовательного подхода в ваших проектах внедрения является довольно сложной задачей. Одним из инструментов, которые я успешно применил, является представление некоторой эталонной архитектуры или эталонной модели, или даже лучше: и того, и другого, в эталонной реализации. В этом документе описывается высокоуровневая архитектура приложений, которая, как я считаю, очень полезна при создании такой эталонной реализации.

Цель

Я пытаюсь представить общее представление о принципах архитектуры приложений. Целевая аудитория: архитекторы решений, разработчики и информационные аналитики.

Архитектурные стили

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

Цель состоит в том, чтобы применять эти стили осознанно и последовательно, тем самым получая выгоды и управляя последствиями использования определенного стиля.

Теоретическое обоснование

Архитектурные стили сделаны явными на основе диссертации Роя Филдинга (2000): Архитектурные стили и проектирование сетевых программных архитектур: https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm ,

Эта диссертация послужила основой для определения сервисов RESTful, которые стали стандартом де-факто для подключения сервисов, особенно для интерфейсных сервисов.

За эти годы я нашел его обзор архитектурных стилей (не только RESTful!) Очень полезным. Особенно для бизнес-ориентированная архитектура можно очень кратко определить, какой стиль должен использоваться в какой части архитектуры (в первую очередь внешний интерфейс, уровень обслуживания, бизнес-компонент, внутреннее подключение).

Бизнес-услуги

Деловые услуги о «как и что?». Бизнес-логика является ядром любой системы. «Расщепление» бизнес-логики является известной и распространенной проблемой:

  • Функциональные изменения повсюду имеют непредсказуемые побочные эффекты
  • Одинаковая функциональность повторяется повсеместно

Следовательно: изолируйте бизнес-логику в одном месте. Это логическое структурирование бизнеса. Он построен вокруг двух аспектов:

  1. Бизнес Объекты
  2. Бизнес-функции / процессы / взаимодействия

Эта изоляция является достаточно распространенной: необходимо приложить усилия, чтобы избежать включения всех видов «технологий» в этот компонент. Он должен быть в состоянии «симулировать» бизнес, не нуждаясь в таких понятиях, как компьютеры, сети, базы данных или тому подобное.

Модель предметной области

Модель предметной области

Домен - это компонент, содержащий бизнес-логику. Этот компонент сам по себе способен выполнять все желаемые функции (бизнес-процессы). Это относительно изолированный компонент, так как он способен это делать, даже если он полностью отключен от других частей архитектуры.

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

Эти доменные объекты 1-1 связаны с бизнес-сервисами на уровне сервисов или, как я предпочитаю называть, сервисным ландшафтом. Модель предметной области реализована в этих бизнес-сервисах.

Архитектурные стили для доменной модели

Несколько стилей вступают в игру для этого компонента, однако основной, который я предпочитаю, это Пиринговый ,

  • Архитектурные стили: Пиринговый (Филдинг). Также см Модель предметной области (Фаулер)
  • Распределенные объекты (Fielding) для подключения бизнес-сервисов
    • (Взаимные) соединения через удаленное взаимодействие
    • Облегченные очереди сообщений
    • Микро-сервисы для содержания объектов
    • Двунаправленные отношения разрешены только в пакетах
    • Пакетные зависимости всегда однонаправленные
  • C2 (Fielding, подробнее об этом позже) для запуска событий, когда происходит что-то важное (т.е. изменения состояния)
    • Объекты ничего не знают о (потенциальных) подписчиках на этих событиях

Технический сервис

Технический сервис

Бизнес-услуги являются центральными (спутниковая модель, объясненная во многих других статьях).

  • Снаружи: обмен сообщениями
  • Наизнанку: события

Любые изменения, вносимые через техническую службу по периметру, в первую очередь обновляют бизнес-службу. Это гарантирует, что любое изменение будет рассматриваться соответствующей бизнес-логикой (Larman: Expert Pattern). Бизнес-объект затем передает изменения подписчикам, явно не делая этого. Изменение распространяется «косвенно» через запуск события в синеву. Источник события не знает о возможных приемниках событий.

Пример сценария:

  1. База данных (технический компонент) обновляет Contract :: contractDate (Business Service)
  2. Техническая служба сначала отправляет сообщение в Business Service Contract
  3. Контракт запускает событие изменения и при необходимости выполняет дополнительную бизнес-логику
  4. Службы синхронизации распространяются, например, на другую базу данных

Следующие источники представили этот архитектурный стиль:

Роль технических служб

Главное правило: все является сервисом в SOA. Обратите внимание, что подход, представленный в этой статье, особенно эффективен в среде микросервисов, хотя все еще очень полезен в архитектуре с более крупномасштабными сервисами.

Технические услуги следует рассматривать как механизм синхронизации между моделью предметной области и «реальным миром». «Реальный» мир синхронизирован с внутренним представлением программного обеспечения (см .: Через зеркало ).

Для этой синхронизации создаются технические компоненты:

  • Веб (или другие) внешние интерфейсы
  • Базы данных
  • Компоненты безопасности
  • И т.п.

Также известный как службы интеграции

Технические услуги - это (чрезвычайно!) Простые, параметризованные, стандартные компоненты (каркас), и поэтому они либо используются / закупаются (например, Spring или адаптер базы данных Oracle), либо создаются только один раз, тщательно документируются и тщательно тестируются для интенсивного использования в проектах. , (Экстрим) Легкость, производительность и отсутствие ошибок являются ключевыми словами при рассмотрении технических услуг.

Бизнес-услуги ⇄ Технические услуги

  • Архитектурный стиль: C2 (Филдинг)
  • От бизнеса к техническому (наизнанку): уведомления (события) - косвенные
  • От технического к бизнесу (снаружи): запросы (сообщения) - прямые
  • Концептуально асинхронный (синхронный - это решение о реализации, а не проектное решение)
  • Не допускается прямая связь с техническими компонентами (например, база данных, интерфейс): всегда проходите через технические службы

Технические службы обычно связаны между собой:

  • Технический компонент ⇄ TS1 ⇄ TS2 ⇄ TS3 ⇄ Бизнес-сервис

Каждая техническая служба должна отвечать только за один аспект интеграции (например, агрегация данных + кэширование), создавая, таким образом, небольшие, простые для понимания и обслуживания службы с четко определенными интерфейсами.

Виды технических услуг

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

Обратите внимание, что эти компоненты не следует путать с   Образцы интеграции Хопе   ,

Виды технических услуг

Архитектурный стиль для всех технических служб

Основной стиль здесь - Uniform Interfac e (Fielding). Публикация событий и / или подписка на события техническими службами также возможна (стиль C2 ). Технические службы создаются / параметрируются, а не программируются. Специфические технические службы могут вводить новые стили.

Интерфейс подключения

Внешний интерфейс следует рассматривать как своего рода Технический компонент, с которым вы соединяетесь (как любой Технический компонент) через Технические службы. Архитектурный стиль здесь: Layered-Client-Cache-Stateless-Server (+ унифицированный интерфейс) (Fielding) = REST архитектурный стиль.

Контроллеры Spring REST, например, могут функционировать как ресурс REST.

Поиск в Business Service может быть упрощен (HATEOAS), оригинальная концепция службы каталогов оказалась слишком тяжелой.

Рамочные руководящие принципы

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

Все контроллеры уровня интеграции наследуются от универсального контроллера. Это приводит к ок. 90% повторного использования кода.

Например (код в универсальном классе Controller):

this.linkBusinessServiceWithTechnicalComponent (businessService, technicalComponent);

Это создает и параметризует адаптер интеграции, который заботится об интерфейсе с техническим компонентом. Адаптеры закупаются или разрабатываются только для платформы (не разработчиками в проектах). Проекты только повторно используют их. Контроллеры уровня интеграции также можно рассматривать как контейнеры для адаптеров.

Постоянство подключения

Обычно бизнес-сервисы по-прежнему извлекают данные «напрямую» из баз данных или из прежних версий (PL / SQL, JPA). Подобно подключению внешнего интерфейса, это должно быть реализовано техническими службами, обеспечивающими постоянство как услугу. Это приводит к почти полной независимости от физических баз данных и устаревших систем, что позволяет выполнять миграцию и очистку. Для этого существующие службы должны быть изменены или реорганизованы, что часто кажется сложной задачей.

Технические компоненты

Что такое технические компоненты Что такое технические компоненты?

Примеры:

  • Базы данных
  • Веб-интерфейс
  • Серверы безопасности (например, Keycloak)
  • Внешние системы в целом (Salesforce, SAP и т. Д.)

Они изолированы или упакованы, предоставляя им:

  • «Четко определенные» сервисные интерфейсы
  • «Разъемы» (розетки) для подключения

Как и доменные объекты, они полностью независимы от клиентов. Основная стратегия - оставить их как можно больше. Если использовать вышеупомянутые стили, вы обнаружите, что вы почти в состоянии полностью изолировать их, что означает, что, по крайней мере, функционально, вы можете перенести их на досуг.

Похожие

Логистика - Услуги - Старт
Имея более 50 складов, Europapier Group имеет возможность хранения в общей сложности более 150 000 поддонов. Склады оборудованы полками и другими системами хранения, оптимизируя использование пространства и обеспечивая высокую безопасность хранения продукции. В Польше центральный склад находится в Блоне. 13 800 м2 - склад 16
SAMSUNG UE32F5000 LED TV ОБЗОРЫ ТЕХНИЧЕСКИЕ ДАННЫЕ
... технические характеристики телевизора SAMSUNG UE32F5000 : Экран: 32 дюйма (80 см), разрешение FullHD 1920 × 1080 пикселей с технологией Wide Color Enhancer Plus, Clear Motion Rate 100 Гц и цифровым шумовым фильтром; Цифровой наземный ТВ-тюнер DVB-T / C; аналоговый тюнер, Cl / Cl +; Аудио: цифровой Dolby Plus / Dolby Pulse; SRS / DNSe +; Dts Studio Sound; 2 динамика по 10 Вт с функциями включения и полного диапазона Доступные
...
К списку
Обзор Nokia Lumia 1020
С учетом вышесказанного, Lumia 1020, как и большинство телефонов Windows от Nokia, включает в себя полный набор приложений для OEM и операторов - на самом деле их более 20. Это включает в себя Nokia Care, Music, Pro Cam, Smart Cam, а также набор программ Here-based, таких как City Lens, Drive + Beta, Maps и Transit. Со стороны AT & T вы увидите адресную книгу, FamilyMap, Locker, Navigator, Radio, Mobile TV, myAT & T и YPMobile, которые можно легко удалить, если вы не нашли для них
HOMTOM HT10 - недорогой смартфон со сканером радужной оболочки глаза => Tablety.pl
HOMTOM HT10 - новый флагман азиатской компании, которая дебютирует в официальной дистрибуции в Польше. Телефон отличается сканером радужной оболочки. HOMTOM HT10 - новый флагман азиатской компании, которая дебютирует в официальной дистрибуции в нашей стране. Телефон выделяется среди других 10-ядерный процессор MediaTek Helio X20 и встроенный сканер радужной оболочки глаза, что до сих пор редко встречается в смартфонах. А что
HTC | Смартфоны и мобильные устройства высокого качества и приятной цены
Рынок смартфонов - действительно тяжелое время для производителей. Каждая последующая модель является либо новой копией предшественника, либо худшей копией соревнования. Все задаются вопросом, чем выделиться на этом мощном, но многолюдном рынке. HTC U Ultra был надет на сапфировое стекло. Он был покрыт передней и задней частью устройства. Стоит учитывать, что это касается только модели с 128 ГБ встроенной памяти. Более слабая версия на 64 ГБ имеет Gorilla Glass 5. Что касается преимуществ
Продюсер, проявивший себя благодаря ярким, компактным штативам, предлагающим очень хорошее соотноше...
Продюсер, проявивший себя благодаря ярким, компактным штативам, предлагающим очень хорошее соотношение цены и качества, обновляет свое предложение. В линейке S Collection мы находим те же модели, что и раньше, но с обтекаемым дизайном. Представленные на рынке несколько лет назад штативы MeFoto обычно пользуются хорошей репутацией среди фотографов. Главным образом из-за его компактного, но функционального дизайна и доступной цены. Нельзя отрицать их очарование - в разноцветном
MyKronoz ZeCircle TEST: SmartWatch и трекер активности!
... службы батареи обязательно. ПОЛНАЯ РАСШИРЕННАЯ ЗАЯВКА ZeCircle работает с приложением с тем же именем «ZeCircle», доступным на iOs или Android. Это позволяет вам устанавливать и отслеживать ваши цели темпа, расстояния, калорий и сна. Результаты доступны в виде сводки дня / недели / месяца. Это довольно ясно и полно, хотя мы бы оценили совместимость с приложениями, посвященными спорту, такими как RunKeeper, Nike + или Google Fit.
Anellokids - Магазины с детской одеждой, интернет-магазин - Mayoral - Chrzanów
Школьная планировка Для всех детей школьного возраста мы подготовили планету, идеально подходящую для начала и окончания учебного года и всех академий. Для девушек
Mind Mapping
Статья о картографировании - основной инструмент для общества знаний. Новые вызовы в обществе знаний В течение нескольких лет ученые говорили о смене парадигмы от индустриального общества к обществу знаний. Сегодня мы живем в обществе, основанном на знаниях, где знания являются непосредственным фактором производства и конкурентоспособности. В отличие от информации, знания хранятся не в книгах или на жестких дисках, а в организационных и управленческих структурах, а также
Задняя крышка iFace Sony Xperia Z2
обзор Задняя крышка iFace Sony Xperia Z2, Women была разработана на основе корпуса S-line, с которым я сталкиваюсь, с исключительным сцеплением и множеством других продуктов, а Color Variation стремится дифференцироваться. В частности, боковые стороны корпуса, используемые в полиуретановом материале, являются очень прочным и эластичным материалом, превосходящим способность восстанавливать осьминога как физическое умное устройство от повреждений, вызванных ударом, и обеспечивает

Комментарии

Какие модели выбирают самые большие звезды?
Какие модели выбирают самые большие звезды? Кейт Босуорт и Кася Туск решили, что лучше всего подойдут белые расклешенные платья миди. Gabi Drzewiecka приобретает характерный бордовый цвет, а Изабела Яначовска и Уршула Дембска предпочитают богато украшенные творения. Кейт Босуорт и ее простое расклешенное платье-миди Если классические полуночные платья
Какая модель будет лучшим выбором?
Какая модель будет лучшим выбором? Я попытаюсь ответить на этот вопрос (и не только на это) в этом сравнении. между Xperia XZ1 и Xperia XZ Premium - на первый взгляд - мы не найдем слишком много различий. Второй смартфон лишь немного больше, и для его изготовления использовались другие материалы. В
Есть ли смысл покупать новую модель?
Есть ли смысл покупать новую модель? Это зависит от многих факторов, и одним из них является соотношение цены и качества. Мы кратко представляем модели, которые должны скоро появиться в польских магазинах. Radeon RX 590 спецификация Посередине была смонтирована система на архитектуре Polaris 30 XT , выполненная по 12 нм техпроцессу. Новый макет имеет 2304 потоковых процессора, 144 текстурных блока и 32 блока визуализации. Таким образом, его спецификация идентична
Я не думаю, что нам нужно объяснять, кто является звездой дня?
Я не думаю, что нам нужно объяснять, кто является звездой дня? Все дело вкуса, но сегодня мы предлагаем вам несколько скромных и в то же время классически элегантных творений для свидетелей или других женщин, идущих на свадьбу. Стили девушек никогда не выходят из моды, и в них хорошо выглядит каждая женщина. Выбирая платье для свидетеля, подумайте о текущих тенденциях свадьбы и выберите модный цвет такого творения. Ваш выбор определенно будет зависеть от того, какую свадьбу вы
Является ли программное обеспечение Mind Mapping основным инструментом управления проектами?
Является ли программное обеспечение Mind Mapping основным инструментом управления проектами? Пока нет, но, на мой взгляд, программное обеспечение для составления карт разума вполне готово стать очень гибким инструментом управления проектами и центром управления. Программное обеспечение Mind Mapping все еще не принято частными лицами и корпорацией в качестве инструмента управления, но с очевидными предлагаемыми преимуществами это будет лишь вопросом времени. Дополнительную информацию и
Какова будет реализация и функционирование RTA (доступность в реальном времени)?
Какова будет реализация и функционирование RTA (доступность в реальном времени)? В форме, полученной из Национальной библиотеки, выберите метод сотрудничества: XML-файлы и API. Файл XML используется для предоставления полной информации о содержимом базы данных (все при первой загрузке, затем только разница). API служит для предоставления информации о наличии определенных копий, отображаемых в результатах. Через API доступность проверяется точно в момент отображения результатов.
Тебе нравится ее стиль?
Тебе нравится ее стиль?
Разве эти телефоны не имеют всех наворотов?
Разве эти телефоны не имеют всех наворотов? «Правда заключается в том, что перевозчики зарабатывают слишком много денег на международных планах», - сказал один из представителей американских перевозчиков, который говорил с TechRadar в MWC 2017 , «Их прибыль испаряется, как только появляется вторая SIM-карта. Вы не увидите его на самых больших телефонах ». Другими словами, это не жадность Apple
Какие услуги / продукты доминируют?
Какие услуги / продукты доминируют? Как финансируются стартапы? Результаты исследования ясно показывают, что стартапы используют различные источники финансирования. То, чем пользуется почти 77%, может развивать компанию благодаря выручке от продаж.

Какие модели выбирают самые большие звезды?
Какая модель будет лучшим выбором?
Есть ли смысл покупать новую модель?
Я не думаю, что нам нужно объяснять, кто является звездой дня?
Является ли программное обеспечение Mind Mapping основным инструментом управления проектами?
Какова будет реализация и функционирование RTA (доступность в реальном времени)?
Тебе нравится ее стиль?
Тебе нравится ее стиль?
Разве эти телефоны не имеют всех наворотов?
Разве эти телефоны не имеют всех наворотов?
Все права защищены