Эксплуатация микросервисов: размер имеет значение, даже если у вас Kubernetes

93aef1d166a8a3536538eff713f80307?s=47 flant
September 19, 2018

Эксплуатация микросервисов: размер имеет значение, даже если у вас Kubernetes

Доклад технического директора компании «Флант» (http://flant.ru/) Дмитрия Столярова на первом митапе Highload++ User Group (HUG), посвящённом микросервисам.

* Текстовый обзор доклада: https://habr.com/company/flant/blog/424531/
* Видео с выступления: https://youtu.be/g9cgppj0gKQ

93aef1d166a8a3536538eff713f80307?s=128

flant

September 19, 2018
Tweet

Transcript

  1. Дмитрий Столяров CTO & Co-founder Эксплуатация микросервисов: размер имеет значение,

    даже если у вас Kubernetes
  2. Productivity Base Complexity

  3. Productivity Base Complexity Monolith

  4. Productivity Base Complexity Monolith as complexity kicks in, productivity starts

    failing rapidly
  5. Microservice Productivity Base Complexity Monolith for less-complex systems, the extra

    baggage required to manage microservices reduces productivity
  6. Microservice Productivity Base Complexity Monolith the decreased coupling of microservices

    reduces the attenuation of productivity
  7. Productivity Base Complexity Monolith Microservice for less-complex systems, the extra

    baggage required to manage microservices reduces productivity as complexity kicks in, productivity starts failing rapidly the decreased coupling of microservices reduces the attenuation of productivity
  8. Microservice Productivity Base Complexity Monolith Martin Fowler https://martinfowler.com/bliki/MicroservicePremium.html 13 мая

    2015
  9. Что привносит Kubernetes?

  10. Microservice Productivity Base Complexity Monolith

  11. Microservice Monolith Productivity Base Complexity Microservice Monolith

  12. Microservice Monolith Productivity Base Complexity Microservice Monolith

  13. Productivity Base Complexity Microservice Monolith

  14. Я не видел ни одного проекта с нормальной микросервисной архитектурой

  15. Вопросы у аудитории

  16. Вопросы у аудитории Стоит ли доверять опыту докладчика?

  17. Вопросы у аудитории Стоит ли доверять опыту докладчика? Что докладчик

    понимает под нормальной микросервисной архитектурой?
  18. Стоит ли доверять опыту докладчика? Что докладчик понимает под нормальной

    микросервисной архитектурой? Вопросы у аудитории
  19. Productivity Base Complexity Microservice Monolith

  20. Productivity Base Complexity Microservice Monolith

  21. Productivity Base Complexity Microservice Monolith Полезная микросервисность

  22. Productivity Base Complexity Microservice Monolith

  23. Productivity Base Complexity Microservice Monolith Вредная микросервисность

  24. Стоит ли доверять опыту докладчика? Что докладчик понимает под нормальной

    микросервисной архитектурой? Вопросы у аудитории
  25. 85 проектов с начала этого года

  26. Productivity Base Complexity Microservice Monolith Вредная микросервисность

  27. Зачем нам микросервисы?

  28. Strong Module Boundaries Microservices reinforce modular structure, which is particularly

    important for larger teams. Microservices Benefits Independent Deployment Simple services are easier to deploy, and since they are autonomous, are less likely to cause system failures when they go wrong. Technology Diversity With microservices you can mix multiple languages, development frameworks and data-storage technologies. Martin Fowler https://martinfowler.com/articles/microservice-trade-offs.html
  29. Наши ожидания?

  30. Чёткие границы модулей Наши ожидания?

  31. Чёткие границы модулей Наши ожидания? Независимость деплоя

  32. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

  33. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

    Независимость разработки
  34. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

    Независимость разработки Раздельное масштабирование
  35. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

    Независимость разработки Раздельное масштабирование Бо́льшая надежность
  36. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

    Независимость разработки Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки
  37. Чёткие границы модулей Наши ожидания? Независимость деплоя Свобода выбора технологии

    Независимость разработки Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов
  38. Productivity Base Complexity Microservice Monolith Вредная микросервисность

  39. Вредная микросервисность типичный представитель

  40. catalog

  41. catalog product

  42. catalog product frontend

  43. catalog product frontend Пользователи

  44. catalog product frontend Browser Пользователи

  45. catalog product frontend Browser Пользователи api

  46. catalog product frontend Browser Пользователи api search

  47. catalog product frontend Browser Пользователи search api order

  48. catalog product frontend Browser Пользователи search order api payment

  49. catalog product frontend Browser Пользователи search order payment api users

  50. catalog product frontend Browser Пользователи search order payment users api

    auth
  51. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android
  52. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api
  53. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api
  54. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat
  55. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket
  56. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image
  57. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage
  58. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video
  59. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation
  60. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization
  61. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news
  62. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news news-front
  63. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static
  64. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router
  65. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics
  66. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator
  67. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи
  68. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend
  69. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front
  70. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor
  71. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz
  72. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad
  73. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange
  74. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange
  75. На чём написали?

  76. frontend Browser Пользователи payment auth api iOS Android mobile-api old-api

    chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange catalog product search order users
  77. catalog product Browser Пользователи search order payment users auth iOS

    Android old-api chat image storage video translation localization news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange frontend api mobile-api websocket news-front
  78. catalog product frontend Browser Пользователи search order payment users api

    iOS Android mobile-api old-api chat websocket image storage video localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange auth translation
  79. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket storage translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange image video
  80. catalog product frontend Browser Пользователи search order users auth api

    iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange payment storage analytics
  81. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api websocket image storage video translation news-front analytics Browser Внутренние пользователи old-api chat localization news static-front static router moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange
  82. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api websocket image storage video translation news-front analytics Browser Внутренние пользователи old-api chat localization news static-front static router moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange
  83. In-memory? Кэш?

  84. frontend Browser Пользователи search payment users auth api iOS Android

    mobile-api chat websocket video translation localization news-front news static-front static analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange catalog product order old-api image storage router
  85. catalog product frontend Browser Пользователи search order payment users api

    iOS Android mobile-api old-api chat websocket image storage video translation localization news static-front static router analytics Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange auth news-front moderator
  86. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange static-front файловый кэш
  87. catalog product Browser Пользователи search order payment users auth api

    iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange frontend
  88. catalog product Browser Пользователи search order payment users auth api

    iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange frontend
  89. Базы данных?

  90. frontend Browser Пользователи search payment auth api iOS Android mobile-api

    old-api chat websocket storage video translation localization news-front static-front analytics Browser Внутренние пользователи admin-frontend moderator-front constructor-front zakaz sklad order-exchange catalog product order users image news static router moderator constructor
  91. catalog product frontend Browser Пользователи search order users auth api

    iOS Android mobile-api old-api websocket image storage video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange payment chat
  92. catalog product frontend Browser Пользователи order payment users auth api

    iOS Android mobile-api old-api chat websocket image storage video translation localization news-front news static-front static router moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange search analytics
  93. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage
  94. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator Browser Внутренние пользователи admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage
  95. Martin Fowler https://martinfowler.com/articles/microservice-trade-offs.html Distribution Distributed systems are harder to program,

    since remote calls are slow and are always at risk of failure. Microservices Trade-offs Eventual Consistency Maintaining strong consistency is extremely difficult for a distributed system, which means everyone has to manage eventual consistency. Operational Complexity You need a mature operations team to manage lots of services, which are being redeployed regularly.
  96. Чёткие границы модулей Наши ожидания оправдались? Независимость деплоя Свобода выбора

    технологии Независимость разработки Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов
  97. Наши ожидания оправдались? Независимость деплоя Свобода выбора технологии Независимость разработки

    Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Чёткие границы модулей
  98. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Насколько, обычно, локализованы изменения?
  99. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Насколько, обычно, локализованы изменения? Можно произвести отладку без распределенного трассировщика?
  100. Наши ожидания оправдались? Независимость деплоя Свобода выбора технологии Независимость разработки

    Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Чёткие границы модулей
  101. Наши ожидания оправдались? Независимость деплоя Свобода выбора технологии Независимость разработки

    Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи
  102. None
  103. Наши ожидания оправдались? Независимость деплоя Свобода выбора технологии Независимость разработки

    Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи
  104. Наши ожидания оправдались? Свобода выбора технологии Независимость разработки Раздельное масштабирование

    Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи Независимость деплоя
  105. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Да, выкатить один сервис технически возможно!
  106. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Да, выкатить один сервис технически возможно! Но нужно постоянно думать о порядке выката нескольких микросервисов.
  107. Наши ожидания оправдались? Свобода выбора технологии Независимость разработки Раздельное масштабирование

    Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи Независимость деплоя
  108. Наши ожидания оправдались? Свобода выбора технологии Независимость разработки Раздельное масштабирование

    Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи Непредсказуемый деплой
  109. Наши ожидания оправдались? Независимость разработки Раздельное масштабирование Бо́льшая надежность Измеримость

    нагрузки “Легкость” микросервисов Распределенный комок грязи Непредсказуемый деплой Свобода выбора технологии
  110. Наши ожидания оправдались? Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость”

    микросервисов Распределенный комок грязи Непредсказуемый деплой Свобода выбора технологии Независимость разработки
  111. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Как сделать (и потом поддерживать) “тестовый” контур?
  112. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Как сделать (и потом поддерживать) “тестовый” контур? Что нужно разработчику, чтобы развернуть локально?
  113. Наши ожидания оправдались? Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость”

    микросервисов Распределенный комок грязи Непредсказуемый деплой Свобода выбора технологии Независимость разработки
  114. Наши ожидания оправдались? Раздельное масштабирование Бо́льшая надежность Измеримость нагрузки “Легкость”

    микросервисов Распределенный комок грязи Непредсказуемый деплой Свобода выбора технологии Невозможность разработки
  115. Наши ожидания оправдались? Бо́льшая надежность Измеримость нагрузки “Легкость” микросервисов Распределенный

    комок грязи Непредсказуемый деплой Свобода выбора технологии Невозможность разработки Раздельное масштабирование
  116. Наши ожидания оправдались? Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи

    Непредсказуемый деплой Свобода выбора технологии Невозможность разработки Раздельное масштабирование Бо́льшая надежность
  117. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Выход из строя практически любого сервиса ломает всю систему.
  118. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Выход из строя практически любого сервиса ломает всю систему. Сделать отказоустойчивым каждый сервис — очень и очень сложно!
  119. Наши ожидания оправдались? Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи

    Непредсказуемый деплой Свобода выбора технологии Невозможность разработки Раздельное масштабирование Бо́льшая надежность
  120. Наши ожидания оправдались? Измеримость нагрузки “Легкость” микросервисов Распределенный комок грязи

    Непредсказуемый деплой Свобода выбора технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость
  121. Наши ожидания оправдались? “Легкость” микросервисов Распределенный комок грязи Непредсказуемый деплой

    Свобода выбора технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость Измеримость нагрузки
  122. Наши ожидания оправдались? Распределенный комок грязи Непредсказуемый деплой Свобода выбора

    технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость Измеримость нагрузки “Легкость” микросервисов
  123. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Огромные сетевые накладки (умножение запросов, rtt, dns, память worker'ов)
  124. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Огромные сетевые накладки (умножение запросов, rtt, dns, память worker'ов) Колоссальное дублирование данных (x3-x10)
  125. Наши ожидания оправдались? Распределенный комок грязи Непредсказуемый деплой Свобода выбора

    технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость Измеримость нагрузки “Легкость” микросервисов
  126. Наши ожидания оправдались? Распределенный комок грязи Непредсказуемый деплой Свобода выбора

    технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость Измеримость нагрузки Сплошные накладные расходы
  127. Распределенный комок грязи Наши ожидания оправдались? Непредсказуемый деплой Свобода выбора

    технологии Невозможность разработки Раздельное масштабирование Абсолютная неустойчивость Измеримость нагрузки Сплошные накладные расходы
  128. А кроме этого...

  129. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Нужна “шина сообщений”
  130. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Как сделать бэкап?
  131. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Несколько регионов?
  132. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Внесение “централизованных” изменений
  133. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Чрезвычайный рост операционной сложности
  134. Productivity Base Complexity Microservice Monolith Вредная микросервисность

  135. Productivity Base Complexity Microservice Monolith Очень вредная микросервисность

  136. Microservice Productivity Base Complexity Monolith Губительная микросервисность

  137. Almost all the successful microservice stories have started with a

    monolith that got too big and was broken up Monolith First Martin Fowler https://martinfowler.com/bliki/MonolithFirst.html Almost all the cases where I've heard of a system that was built as a microservice system from scratch, it has ended up in serious trouble.
  138. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Но что делать, если мы уже оказались в такой ситуации?
  139. Microservice Productivity Base Complexity Monolith Губительная микросервисность

  140. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Но что делать, если мы уже оказались в такой ситуации?
  141. catalog product frontend Browser Пользователи search order payment users auth

    api iOS Android mobile-api old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage Но что делать, если мы уже оказались в такой ситуации? Резать лишнее и укрупнять!
  142. catalog product frontend search order payment users auth api mobile-api

    old-api chat websocket image video translation localization news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage
  143. catalog product frontend search order payment users auth api mobile-api

    old-api chat websocket image video news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage translation localization
  144. catalog product frontend search order payment users auth api mobile-api

    old-api chat websocket image video news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage translation localization
  145. catalog product frontend search order payment users auth api mobile-api

    old-api chat websocket image video news-front news static-front static router analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage
  146. image video analytics zakaz storage catalog product frontend search order

    payment users auth api mobile-api old-api chat websocket news-front news static-front static router moderator admin-frontend moderator-front constructor-front constructor sklad order-exchange
  147. image video analytics zakaz storage catalog product frontend search order

    payment users auth api mobile-api old-api chat websocket news-front news static-front static router moderator admin-frontend moderator-front constructor-front constructor sklad order-exchange
  148. search api mobile-api old-api chat websocket image video analytics moderator

    admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage catalog product frontend order payment users auth news-front news static-front static router
  149. search api mobile-api old-api chat websocket image video analytics moderator

    admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage shop
  150. search api mobile-api old-api chat websocket image video analytics moderator

    admin-frontend moderator-front constructor-front constructor zakaz sklad order-exchange storage shop
  151. search mobile-api old-api chat websocket image video analytics moderator admin-frontend

    moderator-front constructor-front constructor zakaz sklad order-exchange storage api shop
  152. search mobile-api old-api chat websocket image video analytics moderator admin-frontend

    moderator-front constructor-front constructor zakaz sklad order-exchange storage api shop
  153. mobile-api old-api chat websocket image video analytics moderator admin-frontend moderator-front

    constructor-front constructor zakaz sklad order-exchange storage search api shop
  154. mobile-api old-api chat websocket image video analytics moderator admin-frontend moderator-front

    constructor-front constructor zakaz sklad order-exchange storage search api shop
  155. mobile-api old-api image video analytics moderator admin-frontend moderator-front constructor-front constructor

    zakaz sklad order-exchange storage chat websocket search api shop
  156. mobile-api old-api image video analytics moderator admin-frontend moderator-front constructor-front constructor

    zakaz sklad order-exchange storage chat search api shop
  157. image video analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad

    order-exchange storage mobile-api old-api chat search api shop
  158. image video analytics moderator admin-frontend moderator-front constructor-front constructor zakaz sklad

    order-exchange storage api mobile-api old-api chat search shop
  159. image video analytics zakaz sklad order-exchange storage moderator admin-frontend moderator-front

    constructor-front constructor api mobile-api old-api chat search shop
  160. image video analytics zakaz sklad order-exchange storage api mobile-api old-api

    chat search shop-admin shop
  161. image video analytics zakaz order-exchange storage sklad api mobile-api old-api

    chat search shop-admin shop
  162. image video analytics zakaz order-exchange storage api mobile-api old-api chat

    sklad-exchange search shop-admin shop
  163. image video analytics zakaz storage order-exchange api mobile-api old-api chat

    sklad-exchange search shop-admin shop
  164. image video analytics zakaz storage api mobile-api old-api chat sklad-exchange

    order-exchange search shop-admin shop
  165. api mobile-api old-api chat analytics zakaz sklad-exchange order-exchange search shop-admin

    shop image video storage
  166. api mobile-api old-api chat analytics zakaz sklad-exchange order-exchange search shop-admin

    shop media
  167. media api mobile-api old-api chat zakaz sklad-exchange order-exchange search shop-admin

    shop analytics
  168. media api mobile-api old-api chat zakaz sklad-exchange order-exchange search shop-admin

    shop analytics internal-api
  169. media api mobile-api old-api chat zakaz sklad-exchange order-exchange search shop-admin

    shop internal-api analytics
  170. media analytics api mobile-api old-api chat sklad-exchange order-exchange search shop-admin

    shop internal-api zakaz
  171. media analytics api mobile-api old-api chat sklad-exchange order-exchange search shop-admin

    shop internal-api warehouse-replenishment
  172. api mobile-api old-api chat sklad-exchange order-exchange search shop-admin internal-api media

    shop analytics warehouse-replenishment
  173. None
  174. Микросервисы вовсе не микро!!!

  175. for less-complex systems, the extra baggage required to manage microservices

    reduces productivity as complexity kicks in, productivity starts failing rapidly the decreased coupling of microservices reduces the attenuation of productivity Productivity Base Complexity Monolith Microservice
  176. for less-complex systems, the extra baggage required to manage microservices

    reduces productivity as complexity kicks in, productivity starts failing rapidly the decreased coupling of microservices reduces the attenuation of productivity Productivity Base Complexity Monolith Microservice but remember the skill of the team will outweight any monolith/microsevice choice
  177. github.com/flant/grafana-statusmap grafana-statusmap Grafana panel plugin to visualize status of multiple

    objects over time. Звезданите нас, пожалуйста!
  178. Наши Docker/K8s-проекты github.com/flant/dapp github.com/flant/loghouse Дмитрий Столяров dmitry.stolyarov@flant.ru linkedin.com/in/distol github.com/distol Всем

    спасибо! Наш блог на Хабре habr.com/company/flant/ Наш YouTube-канал youtube.com/c/flant