Как запустить первый микровервис: доклад Java Meeting Point

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Александр Каликов, backend-разработчик в Miro, на Java Meeting Point 23 июня расскажет, как его команда делала первый микросервис в компании. Речь пойдет о том, как организовать разработку на Kubernetes и удовлетворить production ready критериям: CI/CD, Monitoring, Alerting, Scalability, Security. 

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


На Java Meeting Point ты поделишься кейсом из практики. Расскажи, какая у вас была задача? 

Miro — это платформа для совместной работы. Мы создаем виртуальные доски, которые помогают организовать рабочие процессы. 

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

Продукт у нас реализован в виде монолита. С ростом команды разработка стала затруднена: долгие релизы, команды пересекались при выводе функционала. Поэтому мы решили переезжать на микросервисы, чтобы более четко определить границы между компонентами системы. Задача версионирования контента как раз стала очень удачной кандидатурой для реализации в виде микросервиса  На конференции я расскажу, с чем мы столкнулись, какой опыт получили. 

Какие сложности у вас были при переезде на микросервисы? 

Сам подход для компании новый, экспертизы мало. Есть ребята, которые работали с микросервисами на других проектах, они нам помогали, но у большинства разработчиков такого опыта не было. Для нас первая сложность — изучить, сделать правильно, не наступить по дороге на кучу граблей. 

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

Отдельно стояла задача выбора технологии для оркестрирования всей системы. Но это решалось не силами нашей команды — здесь помогали DevOps-инженеры. Шли небольшими шагами параллельно с DevOps-командой.   

Что смогут узнать участники конференции? 

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

Кто уже делает что-то похожее, сможет перенять интересные практики, поделиться своими — будет возможность задать вопрос после доклада или поговорить в чате конференции. В докладе расскажу как и какие технологии мы применили: Kubernetes и различные его расширения, Docker и различные утилиты для него, Prometheus, FluentBit. Помимо этого мы используем различные managed сервисы Амазона, так как хостимся в его облаке.

Регистрируйтесь на Java Meeting Point: конференция состоится 23 июня. 

Источник: https://habr.com/ru/company/dins/blog/563930/


Интересные статьи

Интересные статьи

Данная статья будет полезна тем, кто никогда прежде не экспериментировал с Raspberry, но считает, что этому самое время.Привет, Хабр! Тенденция приписывать любому техниче...
В этой серии статей я расскажу почти всё, что нужно знать о генераторах в JavaScript: что это такое, как их использовать и какие тонкости с ними связаны. И, как всегда, начнём мы с осно...
Сегодня любой желающий может воспользоваться методами квантового программирования, написать простой код на Python и запустить его на реальном квантовом вычислителе. Ришат Ибрагимов ri...
Устраивать конкурсы в инстаграме сейчас модно. И удобно. Инстаграм предоставляет достаточно обширный API, который позволяет делать практически всё, что может сделать обычный пользователь ручками.
10 октября в офисе SuperJob состоится встреча JavaScript-разработчиков. Специалисты SuperJob поделятся своим опытом оптимизации приложений на React/Redux, использования статических типов с Flo...