среда, 6 июня 2018 г.

Microprofile: наше микросервисное настоящее и будущее

Разработчики любят микросервисы! И котиков! И микросервисы! Котиков все же сильнее, но поговорим о микросервисах. А конкретнее - о Microprofile.
Ну а что, у них логотип крутой)))


Что такое микросервисы?
Микросервисы - это компоненты архитектурного подхода, при котором приложение строится как набор небольших сервисов, взаимодействующих между собой. При этом прослеживаются следующие черты, присущие этому подходу:

  1. Каждый микросервис - это отдельный процесс;
  2. Микросервисы взаимодействуют между собой, используя простой протокол;
  3. Децентрализованное управление системой; 
Наглядно разные архитектурные подходы выглядят так:


Можно сказать, что микросервисы - это следующий логичный шаг разработчиков программного обеспечения по пути "разделяй и властвуй". Модульная архитектура, явно описанный интерфейс взаимодействия между сервисами, независимое развертывание и обновление микросервисов - все это ведет к упрощению, повышению прозрачности и управляемости приложения. Появляется свобода в выборе технологий для реализации - часть микросервисов можно писать на Java, часть - на C++, а часть - на Go. Это влечет за собой бОльшую свободу при выборе и смене команды, развивающей и поддерживающей решение.

В общем, я надеюсь, я уже достаточно убедительно донес до тебя, читатель, мысль о том, что микросервисы - это очень очень хорошо.
Стандарты
Очень важно понять, что микросервисы - это прежде всего архитектурный стиль. То есть способ организации взаимодействующих компонентов. Нет специальных "микросервисных" фреймворков и т.п.
У этого факта есть обратная сторона. Для того, чтобы в мире Java развернуть микросервис, необходимо было поднять всю инфраструктуру J2EE. Это неудобно, сложно, избыточно и вообще некрасиво. Поэтому производители EE-серверов собрались и решили выкинуть все лишнее и оставить только то, что необходимо для создания микросервисов. Так и получился Microprofile=)

Microprofile
Итак, Microprofile, а точнее - Eclipse Microprofile (Бонд, Джеймс Бонд) - это открытый стандарт, разрабатываемый в рамках Eclipse Foundation вендорами EE-серверов, сторонними организациями и просто интересными людьми.
Вот они - наши герои:
Даже умные медведи поучаствовали)) так мило)))

Вехи
Итак, Microprofile 1.0 вышел в далеком 2016 году,  Туда вошли следующие технологии:

Дальше - больше:

На текущий момент доступна версия Microprofile 2.0 и выглядит она приблизительно так:

Как видим, разработчики Microprofile оставили именно то, что мы любим и ценим: CDI, JAX-RS и многое другое. 

Итог
Microprofile - это хорошо. Так же хорошо, как и микросервисы сами по себе. И почти так же хорошо, как котики. Используйте его в своих проектах. Разбивайте свои приложения на независимые кусочки и будет вам счастье!=)

Ссылки
В статье использованы слайды из официальной презентации Microprofile. Подробнее о технологии можно почитать на официальном сайте.
Удачи!

Комментариев нет:

Отправить комментарий