SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Четвертая	конференция	
разработчиков	ПО«DevParty»	
2	апреля	2016	года,	Вологда	
Безымянников	Евгений	
Микросервисы	-	микро	зло	
и	огромное	добро.	
HomeMe,	Witget,	…	etc
Любая разработка коммерческих продуктов, стартапов,
сервисов в РФ не для гос. сектора
Хотелки клиента
1.  Вчера
2.  За 5 рублей (а лучше бесплатно)
Продаются
1.  Наработки
2.  Опыт/знания
Опыт/знания – критерий выбора
исполнителя
Наработки – возможность получить доп
прибыль и снизить трудозатраты
Студиям
Хотелки бизнеса
1.  Вчера
2.  За зарплату
3.  Точные сроки
4.  Прогнозируемое качество
Продаются
1.  Скорость работы
2.  Стабильность работы систем
Внутренним отделам разработки
1 час простоя = ХХХ тыс рублей
1.  Не дублируем код
2.  Совершенствуем постоянно функционал «нахаляву»
3.  Экономим деньги (или копим на бентли себе)
4.  Ускоряем разработку
5.  Пишем тесты малой кровью
6.  Упрощаем и ускоряем деплой
7.  Информационная безопасность
Минимальные плюсы
желаемое действительное
Особенности работы
Было
Балансировщик
Бэкэнды
Кластер бд
логика «физика»
Было
Большая нагрузка на процессор от кода
+
Малое потребление памяти основных бд
+
Много дискового пространства под картинки
+
Много места дискового нужно для хранения всех логов
=
Сервера недозагружены,
хостерам плевать, облачные хостеры имеют тоже ограничения
(переплата за лишнее до 30%, из-за ssd|hdd до 70%)
Стало
Балансировщик
Кластер серверов
+ Ansible
+ Docker
«физика»логика
Документация (как бы)
Postman, raml, swagger
Тестирование
Тестирование
+ Zabbix
+ Своя система
Тестирование
Работает ли вообще?
Как быстро?
Организация работы
Планирование
Написание ТЗ задачи (эпики, US, тикеты, мокапы)
Написание плана приемки задач
Создание «заглушек»
Написание тестов
Написание кода
Написание документации
Тестирование кода
Ревью кода
Прием теста
Тестирование в dev
Тестирование в preprod
Деплой в prod
Тестирование Prod
Постоянный цикл
Запуск тестов на Dev
– по сборке ветки developer
Запуск тестов на PreProd
– по сборке ветки developer
Запуск тестов на Prod
– раз в 5 минут на цикл
Сухой остаток
1.  Любая часть проекта готова сразу более чем на X%
2.  Сроки разработки увеличиваются существенно
(почти “раз, два и в продакшен”)
3.  Утилизирование серверных ресурсов экономит до
50% бюджета при выросших показателях
производительности
4.  Гибкость в выборе решений+ использование
опенсурса = халявные части систем
Почему меня любят
1.  Стоимость системы равна стоимости всех
компонент
2.  Стоимость компонент с дублирующимися
сервисами считаются как с изолированными =
повторное использование сервиса ведет к
увеличению оценочной цены.
3.  Совершенствование сервисов ведет к росту
оценочной стоимости всех компонент
использующих сервис
4.  Любой сервис можно выделить из внутреннего в
публичный и монетизировать
5.  Каждый сервис реализован оптимальным
способом, а не «как умеем»
Инвесторы
Почему меня любят
1.  Реализация логики, а не очередного «загрузчика
картинок» или «отправки алертов» - растет
ценность работы и уменьшается её рутинность
2.  Есть время на рефакторинг и фичи.
3.  Не нужно знать весь код, только API и схему
работы
4.  Кто то другой может облегчить тебе работу и
жизнь
5.  Четкое понимание логики работы системы в целом
Работники

Más contenido relacionado

Más de Dev_Party

Más de Dev_Party (13)

Елена Никитина, Аналитический центр при Правительстве РФ — Путь питониста, ил...
Елена Никитина, Аналитический центр при Правительстве РФ — Путь питониста, ил...Елена Никитина, Аналитический центр при Правительстве РФ — Путь питониста, ил...
Елена Никитина, Аналитический центр при Правительстве РФ — Путь питониста, ил...
 
Анна Крижановская, Playrix — Продвижение мобильных приложений: Deep Dive
Анна Крижановская, Playrix — Продвижение мобильных приложений: Deep DiveАнна Крижановская, Playrix — Продвижение мобильных приложений: Deep Dive
Анна Крижановская, Playrix — Продвижение мобильных приложений: Deep Dive
 
Денис Каленбет, АО «Эр-Стайл Софтлаб» — Самокапитализация программиста. Как п...
Денис Каленбет, АО «Эр-Стайл Софтлаб» — Самокапитализация программиста. Как п...Денис Каленбет, АО «Эр-Стайл Софтлаб» — Самокапитализация программиста. Как п...
Денис Каленбет, АО «Эр-Стайл Софтлаб» — Самокапитализация программиста. Как п...
 
Игорь Иванов, Playrix — Статистические предсказания игровой активности
Игорь Иванов, Playrix — Статистические предсказания игровой активностиИгорь Иванов, Playrix — Статистические предсказания игровой активности
Игорь Иванов, Playrix — Статистические предсказания игровой активности
 
Владимир Варнавский, интернет-студия «33 Кита» — Идеальный программист
Владимир Варнавский, интернет-студия «33 Кита» — Идеальный программистВладимир Варнавский, интернет-студия «33 Кита» — Идеальный программист
Владимир Варнавский, интернет-студия «33 Кита» — Идеальный программист
 
Андрей Валдуев, Playrix — Основы тестирования и примеры использования базовых...
Андрей Валдуев, Playrix — Основы тестирования и примеры использования базовых...Андрей Валдуев, Playrix — Основы тестирования и примеры использования базовых...
Андрей Валдуев, Playrix — Основы тестирования и примеры использования базовых...
 
Роман Приходько, Владимир Беспрозванных, «Сбербанк-Технологии» — Платформа ЕФС
Роман Приходько, Владимир Беспрозванных, «Сбербанк-Технологии» — Платформа ЕФСРоман Приходько, Владимир Беспрозванных, «Сбербанк-Технологии» — Платформа ЕФС
Роман Приходько, Владимир Беспрозванных, «Сбербанк-Технологии» — Платформа ЕФС
 
Владимир Варнавский, 33 Кита — Как запускать проекты вовремя
Владимир Варнавский, 33 Кита — Как запускать проекты вовремяВладимир Варнавский, 33 Кита — Как запускать проекты вовремя
Владимир Варнавский, 33 Кита — Как запускать проекты вовремя
 
Валерий Чугреев, ИСЭРТ РАН — Архитектура MVC в контексте web-разработки — про...
Валерий Чугреев, ИСЭРТ РАН — Архитектура MVC в контексте web-разработки — про...Валерий Чугреев, ИСЭРТ РАН — Архитектура MVC в контексте web-разработки — про...
Валерий Чугреев, ИСЭРТ РАН — Архитектура MVC в контексте web-разработки — про...
 
Александр Тарасов, Playrix — Продвижение мобильных приложений (user acquisition)
Александр Тарасов, Playrix — Продвижение мобильных приложений (user acquisition)Александр Тарасов, Playrix — Продвижение мобильных приложений (user acquisition)
Александр Тарасов, Playrix — Продвижение мобильных приложений (user acquisition)
 
Николай Мамадаев — Процесс создания дизайна мобильного приложения
Николай Мамадаев — Процесс создания дизайна мобильного приложения Николай Мамадаев — Процесс создания дизайна мобильного приложения
Николай Мамадаев — Процесс создания дизайна мобильного приложения
 
20% задач, которые дают 80% результата — главное при разработке коммерческих ...
20% задач, которые дают 80% результата — главное при разработке коммерческих ...20% задач, которые дают 80% результата — главное при разработке коммерческих ...
20% задач, которые дают 80% результата — главное при разработке коммерческих ...
 
Дмитрий Ивакин, ООО «Пайлабс» — Node.js: realtime приложение на примере систе...
Дмитрий Ивакин, ООО «Пайлабс» — Node.js: realtime приложение на примере систе...Дмитрий Ивакин, ООО «Пайлабс» — Node.js: realtime приложение на примере систе...
Дмитрий Ивакин, ООО «Пайлабс» — Node.js: realtime приложение на примере систе...
 

Евгений Безымянников, ООО «Комод» — Микросервисы — микрозло и огромное добро