Рубрика «Go» - 3
Разбираемся, что такое S3 и делаем простое объектное хранилище на Go
2024-09-05 в 9:30, admin, рубрики: Go, s3, объектное хранилищеЯзыки программирования, которые могут заменить C++ — Rust, Go, Swift, Carbon
2024-08-27 в 8:39, admin, рубрики: c++, carbon, Go, Rust, swift, языки программирования
Язык программирования C++, на котором написано 95% существующего программного обеспечения, был создан Бьерном Страуструпом, датским инженером со странноватой прической, в далеком 1985 году — очень давно!
Под капотом облаков. Строим облачную консоль. Часть 1. Знакомство
2024-08-21 в 9:16, admin, рубрики: Go, mongodb, облачное хранилище, проектирование взаимодействия, проектирование системС чем предстоит иметь дело
Прежде чем перейти к главному, кратко обозначу, что конкретно мы в этой статье будем разбирать. Ведь область облачных вычислений настолько велика, что рассказать про все нюансы облаков вряд ли получится. И во многом это даже бессмысленно, так как информации про виртуализацию и проектирование решений в облаке, итак, предостаточно на просторах интернета. Хотя так или иначе виртуализацию мы затронем, когда будем выбирать чем консоль будет управлять (спойлер: Openstack + OVN).
«Бобер выдыхай»: Go, WinAPI и ассемблер
2024-08-21 в 7:20, admin, рубрики: Go, rest, WinAPI, windowsЧто первым приходит в голову разработчика при слове «Go»? Google и микросервисы? Я тоже так думал, но реальность оказалась значительно интересней.

Написание функционального тестирования в Go
2024-08-17 в 7:15, admin, рубрики: Go, golang, тест, тестирование, тесты, функциональное тестирование, функциональное тестирование по, функциональные тестыМногие пишут юнит-тесты, но не все знают, как писать функциональные. В этой статье будут библиотеки, фишки про функциональные тесты, а самое главное - попрактикуемся их писать на примере Rest API
Функциональное тестирование

ChatOps на практике: создание бота для мониторинга логов
2024-08-13 в 13:05, admin, рубрики: chatops, Go, golang, telegram, telegrambot, алерты, логи, ТелеграммGo: жарим общие данные. Атомно, быстро и без мьютексов
2024-08-06 в 9:00, admin, рубрики: atomic, atomic operation, Go, golang, Mutex, ruvds_статьи
Как правило, в Go для безопасного доступа к общим данным используются мьютексы. Да, каналы тоже можно приспособить для изменения общих данных, так как они потокобезопасны, но это усложняет и замедляет логику.
Но в этой статье мы поговорим о другом. Современные процессоры имеют поддержку атомарных операций, что позволяет на основе них организовывать работу с общими данными до нескольких раз быстрее, чем с помощью общепринятых вариантов. Так как мьютексы реализованы на основе ОС, каналы сделаны на основе внутреннего кода Go с использованием тех же мьютексов из ОС под капотом, а атомарные операции делает сам процессор аппаратно за существенно меньшее количество тактов.Читать полностью »
Разработчики, которые используют Go, сталкиваются с задачей выжать максимальную производительность из каждой строки кода. Но что делать, если оптимизировать уже нечего, а увеличивать скорость всё равно надо?
Меня зовут Никита Галушко. Я старший программист-разработчик в отделе высоконагруженных систем и оптимизации ВКонтакте. В статье поделюсь, какие хитрости помогут использовать Go на полную мощность.
Без холивара «переписать все на Go»: проблема переносимости в Python и ее решение
2024-04-25 в 12:22, admin, рубрики: delivery, github, Go, open source, python, Rust, Программирование, разработка, управление разработкойНа скриптовых языках удобно разрабатывать… И на этом удобство заканчивается. Вне машины разработчика начинаются проблемы. Особенно если вы пишете какой-то прикладной тулинг — cli-утилиты, вспомогательные приложения в вашем SDK и прочее. Вы даже не можете рассчитывать на то, что у пользователя будет pip, чтобы он смог поставить все ваши зависимости, вам все нужно организовать самостоятельно.
В этой статье поговорим о различных формах распространения Python-приложений. Какие есть подходы и инструменты, почему они могут не сработать и как чинить возникающие проблемы.
SQL в качестве API
2024-03-10 в 8:01, admin, рубрики: ansi, api, crud, elasticsearch, Go, graphql, http, json, sql, timeweb_статьи_перевод, XML, архитектура, бэкенд
SQL в API???
Верно, вы уже успели подумать: «это же безумие, предоставлять API, который принимает SQL». Да, это ужасная идея. Особенно, если API обращён к Интернету. Делать так небезопасно, вы напрашиваетесь на атаки в виде SQL-инъекций. Поддержка такого интерфейса превратится в кошмар, а сама реализация бэкенда будет замкнута на конкретную технологию (это будет какая-нибудь база данных ANSI SQL).
Но справедливо ли такое суждение? Время его пересмотреть!Читать полностью »