Поддержка  •  Дневник  •  Без рекламы  •  О сайте  •  Реклама  •  Поставить баннер  •  Fleshlight  •  Прислать  •  Хроника  •  Translate Гости: 15    Участники: 0 Авторизация Авторизация   Регистрация 
Метод Научного Тыка
RULVEN
Поиск  
Blackball iMag | интернет-журнал
Каталог


Начало » Разработка ПО » Что такое микросервисная архитектура и когда ее применять
Мне повезёт!

Что такое микросервисная архитектура и когда ее применять


Добавлено: Пн 25.11.2019 • Sergeant
Источник: источник
Просмотров: 405
Комментарии: 0


Задумывались над тем, как в одном проекте могут совмещаться части на разных языках? Рассмотрим, что такое микросервисная архитектура.

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

Что такое микросервисная архитектура

Микросервисы – это архитектурный шаблон. Все сервисы в этом шаблоне:

  1. Маленькие
    Сервис не должен требовать множества людей для разработки. Одна команда может разрабатывать несколько сервисов.
  2. Сфокусированные
    Один сервис – одна задача.
  3. Слабосвязанные
    Изменения в одном сервисе не влияют на другой.
  4. Высокосогласованные
    Компонент или класс создаются с учетом всех методов решения бизнес-задачи.

Классическое монолитное приложение обычно имеет стандартную структуру Интерфейс -> Бизнес-логика -> Данные.

 

Микросервисы же отталкиваются от бизнес-логики:

 

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

Когда применяется

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

  • Sharding («разбиение» или просто «шардинг») – данные и инструменты для доступа к ним размещаются на разных узлах.
  • Mirroring (создание зеркал) – дублирование всех данных по множеству одинаковых узлов.
  • Собственно, микросервисы – функциональность разбита по бизнес-задачам, каждый сервис может быть создан своими средствами разработки.

Плюсы и минусы микросервисов

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

Положительные стороны

  • Четкое деление по модулям. Всегда будет понятно, как работает та или иная часть кода. Просто добавлять новые функции.
  • Высокая доступность. Если какая-то часть монолита сломается – сломается все приложение. С микросервисами иначе: сервисы могут работать не все (не критические, вроде авторизации), но приложение при этом останется доступным.
  • Разнообразные технологии. При разработке каждого сервиса вы вольны выбирать инструменты, которые лучше всего подойдут для конкретной бизнес-логики в этом сервисе. Например, выбрать оптимальную базу данных и удобные инструменты для работы с ней. Микросервисная архитектура также позволяет попробовать какую-то новую технологию на отдельном сервисе, не переписывая при этом все приложение.
  • Относительная простота развертывания. Каждый сервис поднимается самостоятельно, что делает процесс развертывания и отладки более чистым.

Недостатки

  • Сложность разработки. Если вам нужно быстрое решение (прототип, небольшое приложение, сжатые сроки), то микросервисы вам не подойдут. Скорость разработки – высокая плата за доступность и модульность.
  • Сложность поддержки. Каждый микросервис нуждается в отдельном обслуживании, поэтому нужен постоянный автоматический мониторинг.


Мне нравится 0   Мне не нравится 0



Комментарии

Чтобы добавить видео с YouTube, нужно написать [@youtube=xxxxx] , где xxxxx – ID видео.


Комментарии: 0
Нет ни одного комментария.
RSS-лента
Поделиться ссылкой:
Удаление грудей
Шоколадный кекс Шоколадный кекс
.NET Standard 2.0 - making sense of .NET again .NET Standard 2.0 - making sense of .NET again
HDMI или Display Port: в чëм разница, и чем лучше выводить изображение на монитор HDMI или Display Port: в чëм разница, и чем лучше выводить изображение на монитор

Новое
HDMI или Display Port: в чëм разница, и чем лучше выводить изображение на монитор 3 дня назад, 09:06
HDMI или Display Port: в чëм разница, и чем лучше выводить изображение на монитор
300+ вопросов по JavaScript на собеседовании Пн 29.04.2024
300+ вопросов по JavaScript на собеседовании
25 простых и вкусных маринадов для рыбы Сб 27.04.2024
25 простых и вкусных маринадов для рыбы
Ср 24.04.2024
6 самых мощных немецких автомобилей с двигателем V8
Минусы профессии программиста, что не нравится в работе Пн 22.04.2024
Минусы профессии программиста, что не нравится в работе
15 потрясающих соусов для свиных рёбрышек Сб 20.04.2024
15 потрясающих соусов для свиных рёбрышек
5 ошибок при разработке высоконагруженных сервисов Ср 17.04.2024
5 ошибок при разработке высоконагруженных сервисов
Soft skills: 18 самых важных навыков, которыми должен владеть каждый работник Ср 17.04.2024
Soft skills: 18 самых важных навыков, которыми должен владеть каждый работник
30 вопросов на собеседовании фронтенд разработчика Пн 15.04.2024
30 вопросов на собеседовании фронтенд разработчика
Как работает спидометр в машине: вы всегда хотели это знать, но никто не мог объяснить на пальцах Вс 14.04.2024
Как работает спидометр в машине: вы всегда хотели это знать, но никто не мог объяснить на пальцах
Книги
Refactoring with C# Вт 23.04.2024
Refactoring with C#
Год: 2023
Building IoT Visualizations using Grafana Вт 09.04.2024
Building IoT Visualizations using Grafana
Год: 2022
Getting Started with Grafana Вт 02.04.2024
Getting Started with Grafana
Год: 2022

Разработано на основе BlackNight CMS
Release v.2024-04-19
© 2000–2024 Blackball
Дизайн & программирование:
О сайтеРеклама
Visitors
Web-site performed by Sergey Drozdov
BlackballРекламаСтатистикаПоддержка | МузыкаПлейлистыКиноВидеоИгрыАудиоПрограммыСтатьиКартинкиЮморФорумДневник сайтаПрислать контент