Ячеистая архитектураВасина Википедия

Новости с планеты OGLE-2018-BLG-0677
Что вы не только не знали, но и не хотели знать
Ответить Пред. темаСлед. тема
Автор темы
wiki_en
Всего сообщений: 109473
Зарегистрирован: 16.01.2024
 Ячеистая архитектура

Сообщение wiki_en »

# Ячеечная архитектура

«Ячеистая архитектура» — это парадигма проектирования программного обеспечения, которая структурирует приложения как набор небольших автономных единиц, называемых «ячейками». Он был представлен WSO2 летом 2018 года и в основном разработан Асанкой Абейсингхе, техническим директором (CTO) WSO2, и Полом Фримантлом, соучредителем и бывшим техническим директором WSO2. Эта архитектура направлена ​​на повышение модульности, масштабируемости и удобства обслуживания в сложных распределенных системах.

== Обзор ==

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

== История ==

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

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

* '''Ячейка''': основная единица развертывания и эксплуатации. Ячейка включает в себя все необходимые компоненты, такие как службы, базы данных и конфигурации, для независимого функционирования.
* '''Изоляция''': ячейки работают изолированно, чтобы предотвратить каскадные сбои и повысить безопасность. Изоляция гарантирует, что проблемы внутри одной ячейки не повлияют отрицательно на другие.
* '''Межсотовая связь''': ячейки взаимодействуют через API или протоколы обмена сообщениями, используя стандартизированные форматы и протоколы для обеспечения совместимости.
* '''Наблюдаемость''': каждая ячейка включает в себя возможности ведения журнала, мониторинга и отслеживания, позволяющие получить представление о ее производительности и поведении.

== Преимущества ==

* '''Масштабируемость''': отдельные ячейки можно масштабировать горизонтально в зависимости от требований рабочей нагрузки, оптимизируя использование ресурсов.
* '''Удобство обслуживания''': обновления и обслуживание могут выполняться в отдельных ячейках, не требуя общесистемных изменений.
* '''Устойчивость''': изоляция ячеек повышает отказоустойчивость, поскольку сбои локализуются внутри затронутых ячеек.
* «Гибкость»: команды разработчиков могут работать независимо над разными ячейками, ускоряя циклы разработки и развертывания.

== Проблемы ==

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

== Варианты использования ==

* '''Архитектура микросервисов'''. Для реализации микросервисов часто используется ячеистая архитектура, обеспечивающая структурированную структуру для декомпозиции сервисов.
* «Облачные приложения»: подходят для приложений, разработанных для облачных сред, использующих платформы контейнеризации и оркестрации.
* «Корпоративные системы»: применимо в крупных организациях, где модульность может снизить сложность и улучшить сотрудничество между командами.

== Инструменты и технологии ==

* '''Контейнеризация''': такие технологии, как Docker (программное обеспечение) | Ячейки пакетов Docker для согласованного развертывания в разных средах.
* «Платформы оркестровки»: Kubernetes и аналогичные инструменты управляют развертыванием, масштабированием и работой ячеек.
* «Сервисные сетки»: такие инструменты, как Istio, предоставляют расширенные сетевые функции для безопасной и надежной связи между ячейками.

== Сравнение с другими архитектурами ==

* '''Монолитная архитектура''': в отличие от монолитных систем, ячеистая архитектура разбивает приложения на отдельные блоки, повышая гибкость и масштабируемость.
* '''Сервис-ориентированная архитектура (SOA)'''. Хотя обе архитектуры способствуют модульности, ячеечная архитектура фокусируется на небольших, независимо развертываемых модулях с большим упором на изоляцию.

== См. также ==

* Микросервисы
* Сервис-ориентированная архитектура
* Распределенные вычисления
* Облачные вычисления

* Абейсингхе А. и Фримантл П. (июнь 2018 г.). «Ячеистая архитектура: децентрализованная эталонная архитектура для облачных приложений». [https://github.com/wso2/WSO2 GitHub]. [https://github.com/wso2/reference-archi ... l-based.md Ссылка на эталонную архитектуру].

* ВСО2. (2018). ''[https://wso2.com/whitepapers/the-cell-b ... ntegration Ячеечная архитектура: переписывая будущее интеграции]''. Технический документ WSO2.
* Абейсингхе, А. (2019). ''[https://thenewstack.io/cell-based-archi ... -patterns/ Ячеечная архитектура: новый децентрализованный подход для облачных шаблонов]'' . «Новый стек». 6 августа 2019 г.

Подробнее: https://en.wikipedia.org/wiki/Cell-based_architecture
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ, комментарий, отзыв

Изменение регистра текста: 
Смайлики
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Архитектура космонавт
    wiki_en » » в форуме Васина Википедия
    0 Ответы
    57 Просмотры
    Последнее сообщение wiki_en
  • Романская архитектура в Германии
    wiki_en » » в форуме Васина Википедия
    0 Ответы
    41 Просмотры
    Последнее сообщение wiki_en
  • Украинская архитектура
    wiki_de » » в форуме Васина Википедия
    0 Ответы
    81 Просмотры
    Последнее сообщение wiki_de
  • Одна непрерывная линия: искусство, архитектура и урбанизм Адитьи Пракаша
    wiki_en » » в форуме Васина Википедия
    0 Ответы
    32 Просмотры
    Последнее сообщение wiki_en
  • Безопасная межсетевая архитектура
    wiki_en » » в форуме Васина Википедия
    0 Ответы
    46 Просмотры
    Последнее сообщение wiki_en