Category : golang

golang
Туннелирование трафика: простое решение на Go 2

Ранее я начал писать небольшую программу на Go, чтобы прокидывать трафик между компьютером и своим сервером. Назначение программы исследовательское - посмотреть "как это работает" и разобраться, как именно работают механизмы, мешающие нормальному интернету.В продолжение эксперимента: имеется подключение к интернету через менее дружелюбного провайдера и ноут на macOS (первая версия была под Linux). Прежде чем усложнять код, решил запустить программу на маке без изменения логики. Напомню:…

  • четверг, 19 марта 2026 г. в 00:00:09
golang
Разбираем net/http на практике. Часть 2.1: POST, файлы и in-memory хранилище

Предыдущая статьяВведениеВ предыдущей статье цикла мы успели разобраться с темами создания и запуска сервера, обработчиками и промежутками обработчиками http-запросов, обработкой статических файлов, embed FS и другими базовыми механики net/http.Вторая часть цикла получилась очень объемной и поэтому, в целях повышения читаемости я разделил её на 3 связанные части:Фундамент. Принимаем POST-запросы, загружаем файлы и создаем In-memory хранилище.Архитектура и безопасность. Внедряем Clean Architectu…

  • среда, 18 марта 2026 г. в 00:00:08
golang
Разбираем подводные камни, ошибки и лучшие практики при разработке Kubernetes-операторов. Часть 2

Привет, на связи Стас Иванкевич — техлид в команде разработки управляющего слоя Platform V DropApp в СберТехе. Мы всё так же пилим наш космолёт и готовы поделиться с вами новыми полезными рекомендациями и предостеречь от ошибок при разработке операторов.В первой части мы уже начали обсуждать разработку K8s-операторов. Сегодня поговорим о поведении Reconcile и конфликтах обновлений. Рассмотрим возможные ошибки и обсудим тонкости, которые помогут их избежать.Поехали!Горутины внутри Reconcile: что…

  • среда, 18 марта 2026 г. в 00:00:07
golang
Детекция рейсов карьерных самосвалов методом шаблонной векторизации: архитектура, алгоритмы и инжен…

Исходный кодВ горнодобывающей промышленности точный учёт рейсов карьерных самосвалов — ключевой фактор управления производительностью. Традиционные системы диспетчеризации (DISPATCH от Modular Mining, Wenco, российская «Карьер») опираются на GPS-зоны: система фиксирует въезд самосвала в зону экскаватора или пункта разгрузки и по факту пересечения геозон формирует рейс. Однако этот подход не улавливает аномалии внутри цикла — простои, заторы, сбои датчиков, затянувшиеся обеды — и не позволяет кл…

  • пятница, 13 марта 2026 г. в 00:00:19
golang
Черная магия unsafe в Go: практические примеры и ошибки использования. Часть 1

В стандартной библиотеке Go есть пакет с отпугивающим названием «unsafe». Но он может быть реально полезен! Сегодня поговорим о том, как использовать его надежно и эффективно.Привет, Хабр! Я — Владимир Балун, основатель balun.courses и it-interview.io, до этого руководил небольшой инфраструктурной командой в Яндексе. Я достаточно много писал на C++, но последнее время активно пишу на Go.Эта статья будет для удобства разделена на две части. Из них вы узнаете, как можно создавать срезы без дорого…

  • пятница, 13 марта 2026 г. в 00:00:18
golang
Туннелирование трафика: простое решение на Go

Так сложилось, что периодами по несколько дней я нахожусь в двух разных локациях с двумя разными провайдерами. В одной, приходиться "пробивать окно" в штаты в стене на той стороне. Изначально, чтобы обойти ограничения со стороны google/gemini, необходимо выглядеть настоящим нью-йоркцем. Другим провайдером пользуюсь меньше и в основном не для работы, но ситуация с ним печальнее: как у всех, закручено всё, до чего смогли дотянуться. В том числе не могу достучаться до своего сервера по квн…

  • пятница, 13 марта 2026 г. в 00:00:17
golang
Anthropic и Open AI поддержали мой open source проект Databasus в рамках поддержки OSS проектов

За прошедшие две недели я узнал, что сначала Anthropic, а потом Open AI запустили программы поддержки open source проектов: Claude for Open Source и Codex for Open Source. Я подал заявку в обе программы со своим open source проектом и мои заявки одобрили.Какие были требования, что это даёт и как я буду применять новые инструменты — ниже.Содержание:Что за проект?Что за программы поддержки open source проектов и как я на них подавался?Дисклеймер про использование AI в разработкеКак я буду применя…

  • пятница, 13 марта 2026 г. в 00:00:17
golang
Цифровая капсула времени на чистом Go: почему для вечности не нужны базы данных и фреймворки

А что, если современные технологии для большинства вещей избыточны? В проекте «ЭХО» я решил проверить это на практике, создав цифровую капсулу времени для потомков. Цель — позволить людям оставить память о себе (фото и мысли) в максимально простом и «вечном» формате.Технически это эксперимент по созданию системы на 250 млн анкет без баз данных, фреймворков и лишних слоев — только чистый Go и минималистичный Linux. В этой статье я поделюсь опытом, как заставить обычный ПК работать с такой нагруз…

  • четверг, 12 марта 2026 г. в 00:00:06
golang
Миграция с Polling на Debezium

ВступлениеПривет, Хабр! Меня зовут Ибрагим и я бэкенд-разработчик в команде, которая разрабатывает C2C-площадку в Wildberries — раздел, где пользователи могут продавать друг другу товары через объявления. За каждым объявлением и заказом стоит набор данных, который аналитики используют для отслеживания метрик платформы: жизненный цикл объявлений, конверсии, статусы заказов.Чтобы эти данные попадали в ClickHouse к аналитикам, нам нужна была надёжная синхронизация из PostgreSQL. Долгое время она р…

  • четверг, 12 марта 2026 г. в 00:00:06