Ранее я начал писать небольшую программу на Go, чтобы прокидывать трафик между компьютером и своим сервером. Назначение программы исследовательское - посмотреть "как это работает" и разобраться, как именно работают механизмы, мешающие нормальному интернету.В продолжение эксперимента: имеется подключение к интернету через менее дружелюбного провайдера и ноут на macOS (первая версия была под Linux). Прежде чем усложнять код, решил запустить программу на маке без изменения логики. Напомню:…
Предыдущая статьяВведениеВ предыдущей статье цикла мы успели разобраться с темами создания и запуска сервера, обработчиками и промежутками обработчиками http-запросов, обработкой статических файлов, embed FS и другими базовыми механики net/http.Вторая часть цикла получилась очень объемной и поэтому, в целях повышения читаемости я разделил её на 3 связанные части:Фундамент. Принимаем POST-запросы, загружаем файлы и создаем In-memory хранилище.Архитектура и безопасность. Внедряем Clean Architectu…
Привет, на связи Стас Иванкевич — техлид в команде разработки управляющего слоя Platform V DropApp в СберТехе. Мы всё так же пилим наш космолёт и готовы поделиться с вами новыми полезными рекомендациями и предостеречь от ошибок при разработке операторов.В первой части мы уже начали обсуждать разработку K8s-операторов. Сегодня поговорим о поведении Reconcile и конфликтах обновлений. Рассмотрим возможные ошибки и обсудим тонкости, которые помогут их избежать.Поехали!Горутины внутри Reconcile: что…
Исходный кодВ горнодобывающей промышленности точный учёт рейсов карьерных самосвалов — ключевой фактор управления производительностью. Традиционные системы диспетчеризации (DISPATCH от Modular Mining, Wenco, российская «Карьер») опираются на GPS-зоны: система фиксирует въезд самосвала в зону экскаватора или пункта разгрузки и по факту пересечения геозон формирует рейс. Однако этот подход не улавливает аномалии внутри цикла — простои, заторы, сбои датчиков, затянувшиеся обеды — и не позволяет кл…
В стандартной библиотеке Go есть пакет с отпугивающим названием «unsafe». Но он может быть реально полезен! Сегодня поговорим о том, как использовать его надежно и эффективно.Привет, Хабр! Я — Владимир Балун, основатель balun.courses и it-interview.io, до этого руководил небольшой инфраструктурной командой в Яндексе. Я достаточно много писал на C++, но последнее время активно пишу на Go.Эта статья будет для удобства разделена на две части. Из них вы узнаете, как можно создавать срезы без дорого…
Так сложилось, что периодами по несколько дней я нахожусь в двух разных локациях с двумя разными провайдерами. В одной, приходиться "пробивать окно" в штаты в стене на той стороне. Изначально, чтобы обойти ограничения со стороны google/gemini, необходимо выглядеть настоящим нью-йоркцем. Другим провайдером пользуюсь меньше и в основном не для работы, но ситуация с ним печальнее: как у всех, закручено всё, до чего смогли дотянуться. В том числе не могу достучаться до своего сервера по квн…
За прошедшие две недели я узнал, что сначала Anthropic, а потом Open AI запустили программы поддержки open source проектов: Claude for Open Source и Codex for Open Source. Я подал заявку в обе программы со своим open source проектом и мои заявки одобрили.Какие были требования, что это даёт и как я буду применять новые инструменты — ниже.Содержание:Что за проект?Что за программы поддержки open source проектов и как я на них подавался?Дисклеймер про использование AI в разработкеКак я буду применя…
А что, если современные технологии для большинства вещей избыточны? В проекте «ЭХО» я решил проверить это на практике, создав цифровую капсулу времени для потомков. Цель — позволить людям оставить память о себе (фото и мысли) в максимально простом и «вечном» формате.Технически это эксперимент по созданию системы на 250 млн анкет без баз данных, фреймворков и лишних слоев — только чистый Go и минималистичный Linux. В этой статье я поделюсь опытом, как заставить обычный ПК работать с такой нагруз…
ВступлениеПривет, Хабр! Меня зовут Ибрагим и я бэкенд-разработчик в команде, которая разрабатывает C2C-площадку в Wildberries — раздел, где пользователи могут продавать друг другу товары через объявления. За каждым объявлением и заказом стоит набор данных, который аналитики используют для отслеживания метрик платформы: жизненный цикл объявлений, конверсии, статусы заказов.Чтобы эти данные попадали в ClickHouse к аналитикам, нам нужна была надёжная синхронизация из PostgreSQL. Долгое время она р…