Rust vs Go vs C# в 2026: почему наивный Rust проиграл Go
Сравнение производительности Rust, Go и C# в 2026 году: наш тест на аллокациях, где наивный Rust уступил Go, а Rust с ареной оказался в 7 раз быстрее, плюс разбор GC, памяти, холодного старта, Green Tea и .NET 10
Спор «что быстрее: Rust, Go или C#» обычно заканчивается ссылкой на чей-то бенчмарк, где один язык обгоняет другой в полтора раза. Мы решили проверить простую вещь и сразу получили результат, который ломает привычную картину: наивный код на Rust проиграл Go по времени выполнения. Ниже разбираем, почему так вышло, что на самом деле означает «производительность» в 2026 году и как выбирать язык под конкретную нагрузку.
https://uproger.com/rust-vs-go-vs-csharp-proizvoditelnost-2026/
Сравнение производительности Rust, Go и C# в 2026 году: наш тест на аллокациях, где наивный Rust уступил Go, а Rust с ареной оказался в 7 раз быстрее, плюс разбор GC, памяти, холодного старта, Green Tea и .NET 10
Спор «что быстрее: Rust, Go или C#» обычно заканчивается ссылкой на чей-то бенчмарк, где один язык обгоняет другой в полтора раза. Мы решили проверить простую вещь и сразу получили результат, который ломает привычную картину: наивный код на Rust проиграл Go по времени выполнения. Ниже разбираем, почему так вышло, что на самом деле означает «производительность» в 2026 году и как выбирать язык под конкретную нагрузку.
https://uproger.com/rust-vs-go-vs-csharp-proizvoditelnost-2026/
😁9❤6🔥3👍2🌚2
🧮 Математика для ИИ на русском: от школьной базы до трансформеров и диффузии
Бесплатный курс-шпаргалка на GitHub, который связывает формулы с их применением в ML: интуиция → формула → иллюстрация → код на NumPy → задачи.
Внутри:
• Линейная алгебра, производные, вероятности и статистика.
• Backpropagation, оптимизаторы, функции потерь и attention.
• Генеративные модели, обучение с подкреплением, RAG и рекомендации.
Для практики: 26 Jupyter-ноутбуков с запуском в Colab, 60 задач с решениями и 160 вопросов с собеседований. Есть карточки Anki и глоссарий RU ↔ EN.
Если математика забылась, предусмотрен отдельный справочник с нуля: от дробей и процентов до интегралов и матриц.
https://github.com/justxor/math-for-ai-2026
Бесплатный курс-шпаргалка на GitHub, который связывает формулы с их применением в ML: интуиция → формула → иллюстрация → код на NumPy → задачи.
Внутри:
• Линейная алгебра, производные, вероятности и статистика.
• Backpropagation, оптимизаторы, функции потерь и attention.
• Генеративные модели, обучение с подкреплением, RAG и рекомендации.
Для практики: 26 Jupyter-ноутбуков с запуском в Colab, 60 задач с решениями и 160 вопросов с собеседований. Есть карточки Anki и глоссарий RU ↔ EN.
Если математика забылась, предусмотрен отдельный справочник с нуля: от дробей и процентов до интегралов и матриц.
https://github.com/justxor/math-for-ai-2026
👍6❤3🔥2
🐳 Контейнер базы запущен. А приложение всё равно падает с `connection refused`.
Знакомо? Обычный
Собрали 7 приёмов Docker Compose, которые помогут привести стек в порядок:
• Якоря YAML: общие настройки без копипасты.
• Healthcheck: запуск приложения после готовности базы.
• Профили: включение отладочных сервисов по необходимости.
•
•
•
•
С примерами кода и командой
https://uproger.com/docker-compose-7-priemov/
Знакомо? Обычный
depends_on задаёт порядок запуска, но не ждёт, пока PostgreSQL начнёт принимать подключения. Для этого нужны healthcheck и condition: service_healthy.Собрали 7 приёмов Docker Compose, которые помогут привести стек в порядок:
• Якоря YAML: общие настройки без копипасты.
• Healthcheck: запуск приложения после готовности базы.
• Профили: включение отладочных сервисов по необходимости.
•
include: разделение большого файла на части.•
develop.watch: синхронизация кода и пересборка при изменении зависимостей.•
!reset и !override: явное удаление и замена настроек.•
configs.content: небольшие конфиги прямо в Compose-файле.С примерами кода и командой
docker compose config для проверки результата перед запуском.https://uproger.com/docker-compose-7-priemov/
👍2❤1
Как перестать бояться Кафки?
Знакомо? Сервис ответил "заказ принят", а до оплаты заказ так и не доехал, и ты сидишь в логах и не понимаешь, куда делось сообщение. Или консюмер упал, поднялся и обработал то же сообщение ещё раз, а у клиента теперь два списания. Или лаг растёт, ты добавляешь консюмеров, а становится только хуже.
Причём ровно такие же вопросы потом прилетают и на собесах, и как раз на них обычно начинаешь плыть)
Меня зовут Олег Козырев, я staff Golang-разработчик, в IT больше 8 лет. Начинал с C++, потом перешёл на Go и поработал в Озоне, Авито и Т-Банке.
И Кафка мне тоже подкладывала свинью: в Озоне как-то разбудила алертом в четыре ночи, потому что консюмер не успевал разгребать очередь)
Чтобы разобраться с этим, 15 октября в 19:00 по МСК я проведу открытый урок для Go-разработчиков:
Предыстория такая: пока меня не было дома, мой кот Коткинс добрался до телефона и начал заказывать себе вкусняшки с моей карты. Приложение кидает заказ в Кафку, сервис оплаты читает его и списывает деньги. Вот эту систему и будем ломать)
Что разберём на уроке:
🟢 Без занудных определений разберёмся, что такое продюсер, топик, партиции, группа и смещение. Просто проследим один заказ в Kafka UI от кнопки до списания
🟢 Трижды попробуем сломать систему: потеряем заказ, спишем деньги дважды и завалим очередь. И разберёмся, почему так вышло
🟢 По каждой поломке посмотрим, какие есть варианты починки и чем плох каждый
🟢 Попросим нейронку написать консюмер для оплаты и посмотрим, переживёт ли он повтор сообщения
🟢 Расскажу, когда Кафка вообще не нужна и можно спокойно взять RabbitMQ
🟢 В конце отдам репозиторий со всем кодом урока, чтобы ты мог повторить всё у себя
🟢 И конечно же, анонсирую новый поток своего курса по микросервисам на Go
Регистрироваться никуда не надо, ссылка на урок будет прямо в канале по микросервисам:
Залететь в канал с уроком
P.S. Записи не будет, поэтому жду всех в онлайне)
Реклама. ИП Козырев Олег Вячеславович, ИНН 440315249608, erid: 2W5zFHLyLLR
Знакомо? Сервис ответил "заказ принят", а до оплаты заказ так и не доехал, и ты сидишь в логах и не понимаешь, куда делось сообщение. Или консюмер упал, поднялся и обработал то же сообщение ещё раз, а у клиента теперь два списания. Или лаг растёт, ты добавляешь консюмеров, а становится только хуже.
Причём ровно такие же вопросы потом прилетают и на собесах, и как раз на них обычно начинаешь плыть)
Меня зовут Олег Козырев, я staff Golang-разработчик, в IT больше 8 лет. Начинал с C++, потом перешёл на Go и поработал в Озоне, Авито и Т-Банке.
И Кафка мне тоже подкладывала свинью: в Озоне как-то разбудила алертом в четыре ночи, потому что консюмер не успевал разгребать очередь)
Чтобы разобраться с этим, 15 октября в 19:00 по МСК я проведу открытый урок для Go-разработчиков:
Хорош бояться Кафку: ломаем и чиним Go-сервис в прямом эфире
Предыстория такая: пока меня не было дома, мой кот Коткинс добрался до телефона и начал заказывать себе вкусняшки с моей карты. Приложение кидает заказ в Кафку, сервис оплаты читает его и списывает деньги. Вот эту систему и будем ломать)
Что разберём на уроке:
Регистрироваться никуда не надо, ссылка на урок будет прямо в канале по микросервисам:
Залететь в канал с уроком
P.S. Записи не будет, поэтому жду всех в онлайне)
Реклама. ИП Козырев Олег Вячеславович, ИНН 440315249608, erid: 2W5zFHLyLLR
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Forwarded from Machinelearning
Media is too big
VIEW IN TELEGRAM
Китайский разработчик возглавит раунд Winverse AI, которая делает модели воплощённого ИИ для робототехники. Участвует в сделке и фонд Long-Z, принадлежащий Meituan, крупнейшему в Китае сервису услуг.
Основал Winverse AI бывший учёный Tencent, отвечавший там за мультимодальные системы для физических агентов.
Для DeepSeek это одна из крупнейших внешних инвестиций и продолжение выхода на рынок робототехники, ранее лаборатория купила 2% акций Unitree Robotics.
Ставка даёт шанс конкурировать с американскими Skild AI и Physical Intelligence в архитектурах управления и восприятия, нужных китайским производителям оборудования.
bloomberg.com
Команда Frontier Red Team показала, что автономные ИИ-черви могут размножаться на устройствах интернета вещей без дата-центров.
В эксперименте распределённый инференс модели Gemma4-26B-A4B запустили на 15 бюджетных ТВ-приставках с Android, кластер выдал 0,39 токена в секунду.
Открытые модели уже умеют подбирать пакеты и создавать окружение на разнородном оборудовании без root-прав, а в изолированной среде GLM-5.2 прошла полный цикл репликации, то есть просканировала сеть, проникла на целевой хост, развернула среду исполнения и запустила свою копию.
По оценке Anthropic, распределённые ботнеты на моделях до 30 млрд параметров станут технически возможны к концу этого года.
anthropic.com
Две из них оставались открытыми 56 лет. Система доказала ещё 44 гипотезы из онлайн-энциклопедии целочисленных последовательностей, закрыла вопрос в алгебраической геометрии и улучшила оценку в минимаксной оптимизации для обучения нейросетей.
Архитектура соединяет Gemini 3.1 Pro с языком формальных доказательств Lean. Модель пишет доказательство и правит его в цикле обратной связи, Lean разбирает код после каждой итерации, а сообщения об ошибках уходят в контекст следующей попытки.
Для сложных подзадач подключается отдельный инструмент AlphaProof, но задачи Эрдёша базовая связка решила без внешних модулей.
science.org
Открытый проект на спецификациях OCP рассчитан на инфраструктуру агентного ИИ. Ключевой элемент – маршрутизатор токенов, он перенаправляет вызовы агентов и балансирует нагрузку между небольшими открытыми и флагманскими проприетарными моделями.
Поддерживаются жидкостное и воздушное охлаждение, конфигураций две. Крупным облачным операторам предназначена стойка только с процессорами, до 32 тыс. ядер на AMD EPYC шестого поколения, она держит логику агентов, а инференс уходит на внешнюю инфраструктуру.
Корпоративная сборка объединяет процессоры EPYC и ускорители Instinct MI350P, так что инференс и управление агентами влезают в одну стойку.
Готовые системы Dell, HPE, Lenovo и Supermicro обещают в ноябре.
amd.com
Документ описывает трёхмерные эластичные сенсорные матрицы для пальцев и ладоней робота Optimus, т. е. тактильную кожу для криволинейных поверхностей манипуляторов.
Сенсор собран из гибких полимерных слоёв с проводящими дорожками и разделяющей чувствительной прослойкой, работает он по ёмкостному или резистивному принципу, когда деформацию при контакте регистрирует массив независимо опрашиваемых пикселей.
Для серийного выпуска Tesla предлагает формовать многослойные заготовки в пресс-формах под нагревом, а дорожки наносить трафаретной печатью, тампопечатью или прямым 3D-напылением. Внешний слой защищает от влаги и износа.
patents-review.com
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Go 1.27 ускорил HTTP/1 почти в 5 раз
В Go 1.27 net/http сам дочитывает непрочитанное тело HTTP/1 ответа, и соединения
переиспользуются. 100 запросов вместо 710 мс выполняются за 150 мс.
https://uproger.com/go-1-27-http1/
В Go 1.27 net/http сам дочитывает непрочитанное тело HTTP/1 ответа, и соединения
переиспользуются. 100 запросов вместо 710 мс выполняются за 150 мс.
https://uproger.com/go-1-27-http1/
❤25🔥24👍8
На GitHub доступен модульный фреймворк для гибкого тестирования на Go — Testo.
Testo написали разработчики Ozon Tech и уже проверили на тысячах своих e2e-тестов на проде. Фреймворк работает как слой над testing.T внутри экосистемы Go. Он адаптируется под потребности за рамками стандартного пакета и позволяет быстро создавать тесты под любую задачу.
Попробуйте, если хотите расширить ваши тесты отчетами, фильтрами и собственным функционалом через плагины: https://ozon.tech/testo
Testo написали разработчики Ozon Tech и уже проверили на тысячах своих e2e-тестов на проде. Фреймворк работает как слой над testing.T внутри экосистемы Go. Он адаптируется под потребности за рамками стандартного пакета и позволяет быстро создавать тесты под любую задачу.
Попробуйте, если хотите расширить ваши тесты отчетами, фильтрами и собственным функционалом через плагины: https://ozon.tech/testo
❤🔥5🌚2
👾 Русскоязычный каталог из 2118 проектов по декомпиляции игр: от Ocarina of Time до Xbox 360
На GitHub появился awesome-список, собранный на русском: проекты, которые восстанавливают игры из машинного кода. Это декомпиляции, статические рекомпиляции, порты на исходниках и ремейки движков. Задача простая: помочь найти проект под нужную игру и платформу и объяснить, как всё это устроено.
Масштаб впечатляет. В каталоге около 2118 проектов для примерно 1829 игр, из них 1771 активных. По типам: 786 декомпиляций, 525 статических рекомпиляций, 269 портов на исходниках, 238 ремейков движков, 234 дизассемблирования, 57 браузерных портов и 9 инструментов.
По платформам лидирует ПК с 295 проектами, дальше Nintendo 64 (190), Xbox 360 и PlayStation 1 (по 161). Следом идут DOS, GameCube, PS2, Game Boy Advance и Wii. Среди примеров Zelda (Ocarina of Time, Majora's Mask, Twilight Princess), Mario 64, Sonic, Diablo, Morrowind, OpenRA и OpenRCT2.
Внутри не просто список. В README есть топ-25, отдельный список браузерных портов, каталоги по типам и платформам, раздел о том, как начать декомпилировать самому, FAQ и глоссарий. Из инструментов упоминаются N64Recomp, XenonRecomp, RT64, splat, decomp.me, objdiff и m2c. Каталог обновляется автоматически через GitHub Actions.
Важная оговорка: сами проекты работают с данными из легально купленных копий игр, а в репозитории лежат только ссылки.
Репозиторий: https://github.com/justxor/awesome-decomp-games-ru
На GitHub появился awesome-список, собранный на русском: проекты, которые восстанавливают игры из машинного кода. Это декомпиляции, статические рекомпиляции, порты на исходниках и ремейки движков. Задача простая: помочь найти проект под нужную игру и платформу и объяснить, как всё это устроено.
Масштаб впечатляет. В каталоге около 2118 проектов для примерно 1829 игр, из них 1771 активных. По типам: 786 декомпиляций, 525 статических рекомпиляций, 269 портов на исходниках, 238 ремейков движков, 234 дизассемблирования, 57 браузерных портов и 9 инструментов.
По платформам лидирует ПК с 295 проектами, дальше Nintendo 64 (190), Xbox 360 и PlayStation 1 (по 161). Следом идут DOS, GameCube, PS2, Game Boy Advance и Wii. Среди примеров Zelda (Ocarina of Time, Majora's Mask, Twilight Princess), Mario 64, Sonic, Diablo, Morrowind, OpenRA и OpenRCT2.
Внутри не просто список. В README есть топ-25, отдельный список браузерных портов, каталоги по типам и платформам, раздел о том, как начать декомпилировать самому, FAQ и глоссарий. Из инструментов упоминаются N64Recomp, XenonRecomp, RT64, splat, decomp.me, objdiff и m2c. Каталог обновляется автоматически через GitHub Actions.
Важная оговорка: сами проекты работают с данными из легально купленных копий игр, а в репозитории лежат только ссылки.
Репозиторий: https://github.com/justxor/awesome-decomp-games-ru
❤1👍1
Forwarded from Golang
Исправлена уязвимость CVE-2026-111943 в стандартной библиотеке
crypto/x509, связанная с проверкой цифровых сертификатов.Что изменилось:
- Ограничено доверие к небезопасным промежуточным сертификатам.
-
Verify больше не возвращает цепочки с такими сертификатами.- Повышена безопасность проверки TLS-сертификатов.
Анонс: https://groups.google.com/g/golang-announce/c/66pojueaQek/m/tmWX2Pq9AgAJ
Скачать: https://go.dev/dl/
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
10 ноября в Москве пройдёт Go Birthday Conf от RWB
Отметим день рождения Golang вместе с экспертами RWB, YADRO, Т-Банка, VK и Avito. Разберём кейсы из продакшена, поговорим о highload и будущем Go в эпоху AI.
В программе:
Доклады:
— 10 лет Go глазами практика: как менялся язык и что с ним сейчас;
— SIMD без ассемблера: что изменилось и какой прирост производительности можно получить;
— Архитектура доставки продуктовых метрик под высокой нагрузкой;
— Геокодинг и построение маршрутов под нагрузкой.
Дискуссия «Go в эпоху AI» — обсудим, как меняется разработка, что остаётся инженеру и почему растёт роль инженерного мышления.
Воркшоп и архитектурные каты, где можно порешать задачи вместе с другими участниками.
Приглашаем Go-разработчиков, backend-инженеров, тимлидов и всех, кто работает с highload и архитектурой или хочет разобраться, как AI меняет разработку.
Первые 100 офлайн-гостей получат беспроигрышные лотерейные билеты с подарками.
📍 Москва
Старт в 15:00
Программа и регистрация по ссылке
Отметим день рождения Golang вместе с экспертами RWB, YADRO, Т-Банка, VK и Avito. Разберём кейсы из продакшена, поговорим о highload и будущем Go в эпоху AI.
В программе:
Доклады:
— 10 лет Go глазами практика: как менялся язык и что с ним сейчас;
— SIMD без ассемблера: что изменилось и какой прирост производительности можно получить;
— Архитектура доставки продуктовых метрик под высокой нагрузкой;
— Геокодинг и построение маршрутов под нагрузкой.
Дискуссия «Go в эпоху AI» — обсудим, как меняется разработка, что остаётся инженеру и почему растёт роль инженерного мышления.
Воркшоп и архитектурные каты, где можно порешать задачи вместе с другими участниками.
Приглашаем Go-разработчиков, backend-инженеров, тимлидов и всех, кто работает с highload и архитектурой или хочет разобраться, как AI меняет разработку.
Первые 100 офлайн-гостей получат беспроигрышные лотерейные билеты с подарками.
📍 Москва
Старт в 15:00
Программа и регистрация по ссылке
`if x != nil` везде — ещё не значит, что Go-код надёжный
Допустим, ограничитель запросов зависит от Redis:
Паники нет. Но ошибка инициализации превратилась в обычное «доступ запрещён». Сервис работает, запросы отклоняются, причина скрыта.
Обработай сбой там, где он возник:
Если контракт
С входящими запросами тот же принцип: проверяй данные на границе системы, прежде чем передавать их бизнес-логике.
Проверка
Перед очередным `if x == nil` спроси: это нормальное состояние или ошибка, которую пропустили выше?
https://konradreiche.com/blog/excessive-nil-pointer-checks-in-go/
Допустим, ограничитель запросов зависит от Redis:
func (r *RateLimiter) Allow(ctx context.Context) (bool, error) {
if r.redis == nil {
return false, nil
}
return r.checkLimit(ctx)
}
Паники нет. Но ошибка инициализации превратилась в обычное «доступ запрещён». Сервис работает, запросы отклоняются, причина скрыта.
Обработай сбой там, где он возник:
client, err := NewRedisClient(addr)
if err != nil {
return fmt.Errorf("init redis: %w", err)
}
limiter := NewRateLimiter(client)
Если контракт
NewRedisClient гарантирует ненулевой клиент при err == nil, внутреннему коду не нужно заново проверять эту зависимость при каждом вызове.С входящими запросами тот же принцип: проверяй данные на границе системы, прежде чем передавать их бизнес-логике.
Проверка
nil нужна, когда отсутствие значения допустимо или входные данные ещё не проверены. Но молча возвращать «успех» для невозможного состояния — способ спрятать баг.Перед очередным `if x == nil` спроси: это нормальное состояние или ошибка, которую пропустили выше?
https://konradreiche.com/blog/excessive-nil-pointer-checks-in-go/
❤1👍1
🤖Podlodka Backend Crew: AI в бэкенд-задачах
Демо с AI чаще всего выглядят одинаково: агент за десять минут пишет сервис с нуля.
Вот только в работе бэкендера всё сложнее: легаси, рискованные миграции, неработающие тесты и ревью, которое становится бутылочным горлышком.
🗓 С 26 по 30 октября в сезоне Podlodka Backend Crew «AI в бэкенд-задачах» участники:
• Научатся передавать агенту инженерные стандарты и правила, чтобы он писал так, как нужно, а не как получится
• Соберут ревью, где несколько моделей независимо проверяют изменения, а финальное решение остаётся за человеком
• Посмотрят, куда переезжает сложность миграции легаси, когда код пишет агент
• Выяснят, где ломается мечта отдать миграцию агенту целиком
• Разберут, какие антипаттерны тестов агенты уже успели перенять от разработчиков.
Формат — пять дней живых Zoom-сессий утром и вечером, закрытое сообщество в Telegram и общение со спикерами.
Будет много интерактива и практики. Базовый ликбез оставят за бортом — этот сезон для тех, кто уже пробует AI в реальных проектах. Присоединяйтесь с 26 октября!
🔗 Билеты и программа: https://podlodka.io/becrew
Промокодgobackend
Демо с AI чаще всего выглядят одинаково: агент за десять минут пишет сервис с нуля.
Вот только в работе бэкендера всё сложнее: легаси, рискованные миграции, неработающие тесты и ревью, которое становится бутылочным горлышком.
• Научатся передавать агенту инженерные стандарты и правила, чтобы он писал так, как нужно, а не как получится
• Соберут ревью, где несколько моделей независимо проверяют изменения, а финальное решение остаётся за человеком
• Посмотрят, куда переезжает сложность миграции легаси, когда код пишет агент
• Выяснят, где ломается мечта отдать миграцию агенту целиком
• Разберут, какие антипаттерны тестов агенты уже успели перенять от разработчиков.
Формат — пять дней живых Zoom-сессий утром и вечером, закрытое сообщество в Telegram и общение со спикерами.
Будет много интерактива и практики. Базовый ликбез оставят за бортом — этот сезон для тех, кто уже пробует AI в реальных проектах. Присоединяйтесь с 26 октября!
Промокод
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Добавил Go-сервису ядер — а кеш стал медленнее
Причиной может быть один общий мьютекс: горутины работают с разными ключами, но всё равно ждут одну блокировку.
Миша Стребков сравнил шесть реализаций кеша. В его тестах на 8 ядрах разделение на 256 шардов дало до 8× ускорения относительно одного `sync.Mutex`.
Идея простая: вместо одной карты — несколько, у каждой свой мьютекс. Хеш ключа определяет нужную:
Теперь запись
А просто заменить `Mutex` на `RWMutex`? В этих замерах это не решило проблему масштабирования, а при записях результат оказался хуже обычного мьютекса.
Есть нюанс: если почти все обращения идут к нескольким горячим ключам, нагрузка снова сосредоточится на отдельных блокировках.
256 — результат конкретного бенчмарка. Выбирай число шардов по своей нагрузке, а усложняй кеш после замеров.
https://strebkov.dev/posts/shard-your-locks/
Причиной может быть один общий мьютекс: горутины работают с разными ключами, но всё равно ждут одну блокировку.
Миша Стребков сравнил шесть реализаций кеша. В его тестах на 8 ядрах разделение на 256 шардов дало до 8× ускорения относительно одного `sync.Mutex`.
Идея простая: вместо одной карты — несколько, у каждой свой мьютекс. Хеш ключа определяет нужную:
shard := hash(key) % 256
// Блокируем только выбранную часть кеша
parts[shard].mu.Lock()
parts[shard].data[key] = value
parts[shard].mu.Unlock()
Теперь запись
user:42 может выполняться параллельно с записью user:99, если они попали в разные шарды.А просто заменить `Mutex` на `RWMutex`? В этих замерах это не решило проблему масштабирования, а при записях результат оказался хуже обычного мьютекса.
Есть нюанс: если почти все обращения идут к нескольким горячим ключам, нагрузка снова сосредоточится на отдельных блокировках.
256 — результат конкретного бенчмарка. Выбирай число шардов по своей нагрузке, а усложняй кеш после замеров.
https://strebkov.dev/posts/shard-your-locks/
👍6❤1
Что стоит улучшить в Go? Команда языка собирает обратную связь
Открыт Go Developer Survey 2026 — опрос о том, как вы используете Go, с какими проблемами сталкиваетесь и чего вам не хватает.
Ответы помогут команде определить приоритеты развития на 2027 год. Если давно хотелось рассказать, что мешает в повседневной разработке, — самое время.
Заполнение займёт 10–20 минут. Опрос открыт до 3 ноября.
https://blink.qualtrics.com/jfe/form/SV_ba8fa1ZcSQQdTRs?s=x
Открыт Go Developer Survey 2026 — опрос о том, как вы используете Go, с какими проблемами сталкиваетесь и чего вам не хватает.
Ответы помогут команде определить приоритеты развития на 2027 год. Если давно хотелось рассказать, что мешает в повседневной разработке, — самое время.
Заполнение займёт 10–20 минут. Опрос открыт до 3 ноября.
https://blink.qualtrics.com/jfe/form/SV_ba8fa1ZcSQQdTRs?s=x
❤2👍1🔥1
Приглашение на Ozon Tech Platform Meetup
30 октября | 19:00 мск | Москва и онлайн
Команда Платформы зовёт в гости: пообщаться в неформальной обстановке, обсудить сложные решения для высокой нагрузки и обменяться опытом работы с масштабными проектами.
В программе три доклада от тех, кто создаёт и развивает платформенные инструменты. Вы узнаете, из чего сейчас состоит технологическая платформа огромной распределённой системы. Разберёте, почему команда сокращает микросервисы и нужно ли это вам. Погрузитесь в инструменты анализа бигдаты и найдёте портал в эффективную аналитику.
Подробности и регистрация на странице события.
30 октября | 19:00 мск | Москва и онлайн
Команда Платформы зовёт в гости: пообщаться в неформальной обстановке, обсудить сложные решения для высокой нагрузки и обменяться опытом работы с масштабными проектами.
В программе три доклада от тех, кто создаёт и развивает платформенные инструменты. Вы узнаете, из чего сейчас состоит технологическая платформа огромной распределённой системы. Разберёте, почему команда сокращает микросервисы и нужно ли это вам. Погрузитесь в инструменты анализа бигдаты и найдёте портал в эффективную аналитику.
Подробности и регистрация на странице события.
🔥3👌1