SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Microsoft и Linux на одном
проекте: как получить лучшее из
обоих миров и не разорваться
Николай Суровенко
Microsoft ? Linux
2013
Мобильное приложение
для персонализированных новостей
• 6 лет на рынке • Microsoft Stack • Azure → Self-hosted
Из недавнего…
RSS Crawler
• MS SQL
• 70K LOC C#
Новый Crawler
Image Service
• ImageMagick +
• 40K LOC C#
Из недавнего…
RSS Crawler
nginx + plugin
Новый Crawler
Image Service
Из недавнего…
RSS Crawler
Terrible Clustering
• 10K LOC C#
Streaming Clustering
Новый Crawler
nginx + plugin
Image Service
Из недавнего…
RSS Crawler
Terrible Clustering Streaming Clustering
Real-time Publisher Analytics
Новый Crawler
nginx + plugin
Image Service
Из недавнего…
RSS Crawler
Terrible Clustering Streaming Clustering
Real-time Publisher Analytics
Новый Crawler
nginx + plugin
Text Categorization extras
etc…
Почему не винда?
Почему не винда?
Для Windows есть:
o Python
o PostgreSQL
o docker
o nginx
o RabbitMQ
o Spark
o Cassandra
$7k
4 vCPU
$12-24k
per server
Плавная миграция
Архитектура3
Совместимость
Плохие новости
WCF vs REST
Или как победить в любом споре при помощи Google Trends
Совместимость
HTTP REST
SOAP
Совместимость
IExtensibleprotobuf-net
python performance
Совместимость
Общие хранилища
Общий кэш
Consistency Levels
Anti-entropy repair
Архитектура на низком уровне
HTTP REST
BinaryFormatter
Общие хранилища, кэш
Микросервисы
Взаимодействие
Конвейер
Retry
DLX
Optional
Взаимодействие
Клиенты — celery, EasyNetQ
Exactly once
delivery
Exactly once
delivery
Взаимодействие
Общий Continuous Integration workflow
Load tests?
Архитектура на высоком уровне
Service Oriented Architecture Микросервисы
Конвейер, гибкий pipeline
Общий CI workflow
Autodiscovery?
Configuration management?
С чего начать С чего мы начинали
Внутренние семинары
• Технологии • Сommon pitfalls • Выход из vim
Как начать?
Gateway drug: метрики, логи, мониторинг
Holy wars
Архитектура на сверхвысоком уровне
C# программистам нравится bash
Общие инструменты — Grafana, ELK
Нанимаем не только C#
Microsoft ? Linux
Наши админы: fevlake.com
Контакты
Николай Суровенко
nsurovenko@news360.ru
linkedin.com/in/nikolay-surovenko
Тимлид группы персонализации News360

Weitere ähnliche Inhalte

Was ist angesagt?

Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)Ontico
 
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...SECON
 
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Coit-people
 
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИСЭволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС2ГИС Технологии
 
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)Ontico
 
Платформа для поставки счастья в команду QA
Платформа для поставки счастья в команду QAПлатформа для поставки счастья в команду QA
Платформа для поставки счастья в команду QASlava Kuznetsov
 
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...Ontico
 
Денис Иванов
Денис ИвановДенис Иванов
Денис ИвановCodeFest
 
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)Ontico
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Ontico
 
Антон Галицын
Антон ГалицынАнтон Галицын
Антон ГалицынCodeFest
 
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...Ontico
 
Юрий Насретдинов, Badoo
Юрий Насретдинов, BadooЮрий Насретдинов, Badoo
Юрий Насретдинов, BadooOntico
 
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)Ontico
 
Ровная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластереРовная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластереBadoo Development
 
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...Ontico
 
Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"Tanya Denisyuk
 
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Ontico
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банкit-people
 

Was ist angesagt? (20)

Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
Неочевидные детали при запуске HTTPS в OK.Ru / Андрей Домась (Одноклассники)
 
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...
SECON'2016. Панин Сергей, Лебедев Андрей, Храмушин Дмитрий, IT-инфраструктура...
 
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
 
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
 
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИСЭволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС
 
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)
 
Платформа для поставки счастья в команду QA
Платформа для поставки счастья в команду QAПлатформа для поставки счастья в команду QA
Платформа для поставки счастья в команду QA
 
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
 
Денис Иванов
Денис ИвановДенис Иванов
Денис Иванов
 
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
Антон Галицын
Антон ГалицынАнтон Галицын
Антон Галицын
 
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
 
Юрий Насретдинов, Badoo
Юрий Насретдинов, BadooЮрий Насретдинов, Badoo
Юрий Насретдинов, Badoo
 
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
 
Ровная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластереРовная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластере
 
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
Виртуальный ЦОД для корпоративных клиентов на базе Virtuozzo: стабильность, п...
 
Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"Вадим Мадисон "Опыт разработки через микросервисы"
Вадим Мадисон "Опыт разработки через микросервисы"
 
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
 
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
 

Andere mochten auch

DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...it-people
 
Микросервисные архитектуры и немного жизненного опыта
Микросервисные архитектуры и немного жизненного опытаМикросервисные архитектуры и немного жизненного опыта
Микросервисные архитектуры и немного жизненного опытаElena Grahovac
 
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Ontico
 
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)Страх и ненависть в распределенных системах / Роман Гребенников (Findify)
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)Ontico
 
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...Ontico
 
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт... Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...Ontico
 
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)Ontico
 
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Ontico
 

Andere mochten auch (8)

DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
 
Микросервисные архитектуры и немного жизненного опыта
Микросервисные архитектуры и немного жизненного опытаМикросервисные архитектуры и немного жизненного опыта
Микросервисные архитектуры и немного жизненного опыта
 
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
 
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)Страх и ненависть в распределенных системах / Роман Гребенников (Findify)
Страх и ненависть в распределенных системах / Роман Гребенников (Findify)
 
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
Как поддерживать и развивать пачку "похожих" проектов. Кластер или конгломера...
 
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт... Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
Архитектура растущего проекта на примере ВКонтакте / Алексей Акулович (ВКонт...
 
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)
Опыт миграции между дата-центрами / Михаил Тюрин, Сергей Бурладян (Avito)
 
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
Как сделать высоконагруженный сервис, не зная количество нагрузки / Олег Обле...
 

Ähnlich wie Microsoft и Linux на одном проекте: как получить лучшее из обоих миров и не разорваться / Николай Суровенко (News360)

Борис Павлович - Производительность и масштабируемость OpenStack
Борис Павлович - Производительность и масштабируемость OpenStack Борис Павлович - Производительность и масштабируемость OpenStack
Борис Павлович - Производительность и масштабируемость OpenStack Yandex
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET CoreAndrew Gubskiy
 
Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Startup Weekend
 
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Cisco Russia
 
NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...Ontico
 
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...ForkConf
 
Великий и могучий C++
Великий и могучий C++Великий и могучий C++
Великий и могучий C++Andrey Karpov
 
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Ontico
 
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCity
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCityDevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCity
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCityJetBrains Russia
 
Практическое использование фабрики ACI
Практическое использование фабрики ACIПрактическое использование фабрики ACI
Практическое использование фабрики ACICisco Russia
 
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутриАлександр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри404fest
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Ontico
 
FrontEndConf 2015: Microsoft Edge and Web Apps Platfrom in Windows 10
FrontEndConf  2015: Microsoft Edge and Web Apps Platfrom in Windows 10FrontEndConf  2015: Microsoft Edge and Web Apps Platfrom in Windows 10
FrontEndConf 2015: Microsoft Edge and Web Apps Platfrom in Windows 10Constantin Kichinsky
 
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Ontico
 
Сервисы Azure для научных исследований
Сервисы Azure для научных исследованийСервисы Azure для научных исследований
Сервисы Azure для научных исследованийMicrosoft
 
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...DevGAMM Conference
 
Как использовать расходы на ИТ за счет использования облачных сервисов
Как использовать расходы на ИТ за счет использования облачных сервисовКак использовать расходы на ИТ за счет использования облачных сервисов
Как использовать расходы на ИТ за счет использования облачных сервисовCisco Russia
 

Ähnlich wie Microsoft и Linux на одном проекте: как получить лучшее из обоих миров и не разорваться / Николай Суровенко (News360) (20)

Борис Павлович - Производительность и масштабируемость OpenStack
Борис Павлович - Производительность и масштабируемость OpenStack Борис Павлович - Производительность и масштабируемость OpenStack
Борис Павлович - Производительность и масштабируемость OpenStack
 
Что нового в 11.0?
Что нового в 11.0?Что нового в 11.0?
Что нового в 11.0?
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET Core
 
Google appengine for_starupweekend2010
Google appengine for_starupweekend2010Google appengine for_starupweekend2010
Google appengine for_starupweekend2010
 
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
 
NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...NoBigData - потоковая система аналитики clientside производительности, Сергей...
NoBigData - потоковая система аналитики clientside производительности, Сергей...
 
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
(2 часть) 1С-Битрикс. Производительность проекта. Архитектура проекта «Битрик...
 
Великий и могучий C++
Великий и могучий C++Великий и могучий C++
Великий и могучий C++
 
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
Прогрессивный рендеринг и Catberry.js / Михаил Реенко (2GIS / Flamp)
 
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCity
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCityDevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCity
DevOps в команде TeamCity. Евгений Кошкин, Senior Software Developer, TeamCity
 
Практическое использование фабрики ACI
Практическое использование фабрики ACIПрактическое использование фабрики ACI
Практическое использование фабрики ACI
 
YaC 2013 Notes
YaC 2013 NotesYaC 2013 Notes
YaC 2013 Notes
 
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутриАлександр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри
Александр Сербул – Разработка и эксплуатация облачных сервисов Битрикс изнутри
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
 
FrontEndConf 2015: Microsoft Edge and Web Apps Platfrom in Windows 10
FrontEndConf  2015: Microsoft Edge and Web Apps Platfrom in Windows 10FrontEndConf  2015: Microsoft Edge and Web Apps Platfrom in Windows 10
FrontEndConf 2015: Microsoft Edge and Web Apps Platfrom in Windows 10
 
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...
 
Сервисы Azure для научных исследований
Сервисы Azure для научных исследованийСервисы Azure для научных исследований
Сервисы Azure для научных исследований
 
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...
Nekki: Shadow Fight 2: architecture of the analytics system handling billion ...
 
Что Google Cloud Platform может дать бизнесу
Что Google Cloud Platform может дать бизнесуЧто Google Cloud Platform может дать бизнесу
Что Google Cloud Platform может дать бизнесу
 
Как использовать расходы на ИТ за счет использования облачных сервисов
Как использовать расходы на ИТ за счет использования облачных сервисовКак использовать расходы на ИТ за счет использования облачных сервисов
Как использовать расходы на ИТ за счет использования облачных сервисов
 

Mehr von Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 

Mehr von Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Microsoft и Linux на одном проекте: как получить лучшее из обоих миров и не разорваться / Николай Суровенко (News360)

Hinweis der Redaktion

  1. Linux = экосистема
  2. Microsoft нужен = есть код, есть разработчики, есть опыт Linux = открытая экосистема, есть решения многих задач из коробки, мир аналитики больших данных и маленьких денег.
  3. Пару-тройку лет назад у нас был только Microsoft Stack. Казалось что постепенно перейти на Linux stack невозможно. Мы горевали и думали: - в какие технологии инвестировать - кого нанимать - как получить все бенефиты открытой экосистемы не меняя всё, без простоя С одной стороны изолированный Microsoft, с другой стороны светлое будущее.
  4. Перестали волноваться. Находимся посередине, получаем плюсы с обоих сторон. Доклад о том как нам удалось это совместить, Как перейти постепенно Что мы считаем важным в этом процессе и три составляющие успеха.
  5. Но сначала о нас. Сотни тысяч разных топиков на которые вы можете подписаться. Бесконечный фид развлечений. Windows Stack, мы пробовали Azure Крутой state of the art код на C# для наших задач, Windows программисты с богатым опытом. За последние пару лет мы успешно внедрили массу открытых продуктов из linux мира.
  6. Для примера несколько проектов Старый краулер переписали на базе scrapy — фреймворка для краулеров.
  7. Тут есть всё— детекция лиц и smart crop, выбор размера и разрешения в зависимости от устройства, и т.д. Это набор сервисов + файловое хранилище, всё это мы заменили на файловое хранилище, nginx с плагином и облачный кеш.
  8. Поточная кластеризация текстов — до этого у нас было 10 тысяч строк на C#, обратный индекс слов, функция близости полная бизнес-логики. Мы перешли на python + nltk + sklearn + gensim, out of core решение в 1000 строк, которому не нужно много ресурсов, а качество и performance мы можем контролировать.
  9. Реалтайм веб-аналитика для паблишеров контента. Это наш новый проект, который мы разрабатывали с нуля. Apache Cassandra, Apache Spark. 20М событий в день. Аналитика больших данных <3 Linux stack
  10. Что объеденяет эти истории? - убрали код, осовременили - легче поддержка - использовали открытые реализации и не тратили время на свои велосипеды Кстати, время. Сроки были сорваны в два раза. + С переходом на новые технологии это ожидаемо + Сроки ничтожные! (кроме publisher analytics)
  11. И почему винда? Если вы молоды и красивы, то вам нужно срочно развивать ваш стартап, а не пилить собственные велосипеды для уже решенных задач. В нашем случае, кроме инфраструктуры, краулеров и веб-серверов, у нас есть ещё и наукоемкая работа с текстами, и распределенная аналитика не самых мелких данных, сейчас здесь без Linux не обойтись.
  12. Да потому что всё с ужасными костылями, И не является главной платфомой для всех этих продуктов. + ДЕНЬГИ + Искать windows developer’ов для NLP сложно
  13. Windows Server стоит всего $800, но если >4 виртуалок, то Datacenter
  14. Что мы решили делать. Просто переписать всё нельзя. Логика в Transact SQL. Крутой in-house NLP.
  15. Начинаем с хранилищ данных Сервисы по-прежнему С#, но читают из новых хранилищ
  16. Секрет успеха
  17. WCF is dead
  18. WCF очень крут и ничто не сможет его заменить. :’( Swagger+JSON нравится тестерам. Перейти на это на стороне C# очень просто: подключаем пару нагетов. +health checks, HAProxy, nginx Конечно, JSON’ом единым сыт не будешь.
  19. Protobuf-net — странная штука. По-умолчанию не работает расширяемость. Т.е. deserialize => object => serialize теряет поля, про которые наша версия кода ничего не знает. Это можно исправить и тогда для обновления схемы не нужно обновлять сервисы. Python-performance — компилируем C-extensions.
  20. Доступ к MSSQL из linux. Доступ к данным из всех сервисов. Соглашения о том как складывать и как кешировать данные — стандартизация наших сервисов на уровне хранилищ. Проблемы с распределенными системами: - eventual consistency - расхождение реплик
  21. Общие рамки для успешного перехода на микросервисы: REST, swagger-спецификация как точка синхронизации команд Общие форматы Общие соглашения о хранении данных
  22. Легко перейти, у нас и так была Service Oriented Architecture. Не все любят, но нам нравится.
  23. У микросервисов много плюсов, все про них знают, нас интересуют два: - Можно завести зоопарк технологий (это теперь технически возможно) - Можно не переживать о выборе Кстати, приходите на наш практический мастеркласс по микросервисам.
  24. Общая шина сообщений. Сервисы собираем в гибкие конвееры: - обработка ошибок - опциональные сервисы - шардинг Получаются сложные схемы.
  25. Например такие. Админы умеют ими управлять.
  26. Пишем сервисы: - идемпотентные – чтобы избежать проблем - желательно stateless Хорошо понимаем библиотеки — ack, retry политики.
  27. Linux = docker Windows = сервисы по-старинке Через общий CI.
  28. Общий CI workflow объединяет наш зоопарк. Общие рамки — хранилища, форматы, шины сообщений — секрет микросервисов. Свободы много, но не слишком.
  29. Linux команды делятся опытом Семинары по технологиям и частым ошибкам
  30. Посмотрите наш доклад про ELK! Начинайте внедрение с общего удобного инструментария. Избегайте холиваров при его выборе.
  31. Начинаем с метрик и логов Проводим семинары Теперь нанимаем людей и без C#, ура!
  32. Что дальше? - Docker для Windows и Windows Server 2016 - .net Core
  33. Вопросы!