![][1]
Написать сетевой сервис на Go очень просто: в стандартной библиотеке есть куча инструментов, а если чего-то и не хватает, то на Github есть много модных библиотек для удовлетворения большинства нужд.
Но что, если необходимо написать с десяток разных сервисов, работающих в одной инфраструктуре?
Если каждый демон будет использовать все свежие разнообразные «смузи»-технологии, получится «зоопарк», который сложно и дорого поддерживать, не говоря уже о добавлении в них новой функциональности.
У нас в Badoo крутятся >30 самописных демонов, написанных на разных языках, и ~10 из них – на Go. Все эти демоны работают на порядка 300 серверах. Как мы к этому пришли, не получив в итоге «зоопарк», как админы с мониторингом умудряются спать спокойно, не ограничивая при этом никого в смузи, а девелоперы, QA и релизеры живут дружно и до сих пор не переругались – читайте под катом.
[Читать дальше →][2]
[1]:
https://habrastorage.org/web/2aa/ba3/da5/2aaba3da502e454b99ddf9f3d57072a0.png
[2]:
https://habrahabr.ru/post/328062/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut