Golang для компьютерных языков — то же, что Nintendo была для игрового мира в начале 1980-х. Nintendo действительно не была асом, как это считается сегодня, пока Марио и Луиджи не пришли в 1985 году, чтобы навсегда изменить игровую индустрию. Точно так же Golang, хотя и является чрезвычайно многофункциональным, удобным для разработчиков и пользователем языком, меня сбивает с толку, когда некоторые люди сомневаются в его успехе. Критики удивятся, что некоторые крупные компании разработали некоторые из своих основных программных решений с использованием Golang. Благодаря простому синтаксису, параллелизму, обработке ошибок и управлению памятью это один из лучших компьютерных языков для разработки бизнеса.

Здесь я перечислил некоторые громкие имена, которые использовали Golang и пожинают его плоды:

Uber: Uber использует функцию поиска GeoFence, чтобы показать своим пользователям доступность транспортных средств в определенном месте, определить области с особыми требованиями, такие как аэропорты, а затем соответствующим образом реализовать ценообразование. Поиск GeoFence оказался службой Uber с наибольшим количеством запросов в секунду (QPS) по сравнению с несколькими другими, которые они используют. Они были очень довольны написанием этого сервиса на Go. Uber обнаружил, что Golang обладает высокой производительностью по пропускной способности и задержке. Они также обнаружили, что Golang чрезвычайно надежен, поскольку время безотказной работы службы составляло 99,99%. В довершение всего использование Golang также сократило время выхода компании на рынок, поскольку разработчикам легко выучить этот язык, а код прост в обслуживании.

BBC: Угадайте, кто еще использует Go. Не кто иной, как BBC Worldwide, использовала Golang еще в 2012 году для серверной разработки и производства различных игр (как мобильных, так и социальных). Они даже разработали поисковые роботы и парсеры для социальных сетей, написанные на Go, для продукта внутренней аналитики. Судя по всему, они также успешно внедрили Golang при разработке веб-сервисов, выходящих на различные хранилища объектов.

Novartis. Другое известное имя, которое использовало Golang, — это Pharma Giant Novartis. Из-за проприетарного характера приложения доступно не так много подробностей о проекте. Однако это веб-приложение, которое позволяет ученым заказывать клеточные линии из существующей системы инвентаризации. Приложение использует архитектуру CQRS для сервисного уровня, написанную на Go. Кроме того, сценарии PL/SQL также выполнялись из Go. Скрипты обновляют базу данных и выводят строки JSON, которые анализирует Go. Дон Двоске, разработавший приложение Go, оценивает свой опыт работы с Go как фантастический и считает окончательный код очень выразительным и элегантным.

Soundcloud: Soundcloud — это, по сути, организация, часто использующая Ruby on Rails для своего внешнего интерфейса. Однако в нескольких случаях они выбрали Golang. Один из самых захватывающих случаев был, когда они использовали Go для разработки своей системы сборки и развертывания. Платформа предназначена для управления развертыванием внутренних сервисов. Фактор параллелизма Golang сделал его идеальным выбором для такого рода сложных проектов.

Basecamp: еще одна компания, использующая преимущественно Ruby и выбравшая Golang, — Basecamp. Они считают Go подходящим для своих серверных служб и инфраструктуры. Их серверная часть реальных систем мониторинга пользователей и отслеживания просмотров страниц полностью написана на Go. Они создают резервные копии своих записей DNS из Dynect с помощью инструмента, написанного на Go. Кроме того, их демон сбора и хранения данных временных рядов был переписан с Ruby на Go. Это только упоминания о некоторых случаях; они использовали Go. Basecamp успешно использовал Golang в нескольких проектах.

Я и моя организация работаем с Golang и разработали несколько замечательных решений с использованием Golang. Посмотрите на фантастические случаи, над которыми мы работали.