Статистика по микросервисам



К концу года появляется много отчётов и статистики о состоянии JVM экосистемы. В целом ситуация не сильно отличается от прошлого года:



🔸 Самая популярная версия java до сих пор 8, используется на 69% проектов. Java 11 встречается на 36% проектов, а 12 и выше - на 16%.



🔸 Самый популярный фреймворк - Spring Boot: 65% проектов. На втором месте Spring MVC: 40% проектов.



🔸 Самая популярная IDE - Intellij IDEA, система сборки - Maven.



🔸 Трендовые GraalVM, Quarkus и Micronaut нашли применение где-то на 4% проектов, цифра примерно как в прошлом году.



Поэтому в этом посте поделюсь статистикой не по джаве, а по всему, что связано с микросервисами. Данные взяла из JRebel Java Developer Productivity Report 2021 и JetBrains The State of Developer Ecosystem 2021.



Демография: Россия - 3% участников, в основном ответы из США, Китая и Европы.



Итак,



49% проектов используют микросервисы

42% сидят с монолитом

10% применяют serverless архитектуру



На чём пишут микросервисы:

41% Java

37% JavaScript

25% Python



Сколько микросервисов на проекте:

34% Меньше пяти

36% 5-10

14% 10-20

16% 20 и больше



Как микросервисы общаются между собой?

83% HTTP-вызовы

47% Месседж брокер

25% WebSocket

20% RPC



С чем возникает много проблем:

30% Общение между сервисами

26% Масштабирование и производительность

24% Развернуть что-нибудь локально 🥲

14% Проблемы в коде микросервисов



Популярные performance проблемы:

54% Долгий Response Time

39% High CPU Usage

35% Утечки памяти

26% Много открытых соединений



Сколько времени занимает поднятие окружения на удалённой машине:

42% Меньше трёх минут

38% 3-10 минут

21% Дольше 10 минут



Только 20% разработчиков во время деплоя переключаются на другие рабочие задачи. Остальные 80% ходят за чаем, общаются с семьёй и листают соцсети🙂