Ozon Tech Community .NET Meetup

–
Online • Offline • м. Бауманская, ул. Бауманская 11, стр.8, лофт Casa Picassa (Кандинский и Шиле)
preview image event
Поделиться

О мероприятии

Если вы уже не первый год пишете на .NET и знаете, что за каждым long может скрываться логический баг, за каждым пиком нагрузки — инцидент, а за каждой лишней аллокацией — просадка по latency, этот вечер для вас. Поговорим о том, как бороться с primitive obsession на уровне типов, как сервисам переживать нагрузку без каскадных отказов и что на самом деле делает JIT с вашим кодом. Подкрепим всё реальными инженерными примерами, без вводных тем и без теории ради теории.

Программа

19:00
Welcome
Немного об агенде мероприятия.
speaker photo
Антон Воронцов
Руководитель группы разработки «Хранение» 4, Ozon
19:10
Доклад
Primitive obsession — это такой вид ошибок, когда вместо OrderId вы передадите ItemId, потому что они оба имеют тип long, и вы узнаете об этом слишком поздно. Разберём, как решать эту проблему, используя свои простые решения, source generator-ы или готовые пакеты. Как решать её, если у вас старый проект и рефакторить весь код вы не готовы.
speaker photo
Дмитрий Орлов
Руководитель группы разработки «Хранение» 3, Ozon
19:50
Доклад
Доклад посвящён реализации механизма load shedding в микросервисной архитектуре и его применению для защиты сервисов от перегрузки и каскадных отказов. Рассмотрим, чем load shedding отличается от классического rate limiting и почему ограничение по in-flight запросам и response time позволяет эффективнее управлять нагрузкой. Спикер разберёт архитектуру решения на .NET, особенности работы с HTTP и gRPC, а также практические проблемы реализации — от очередей запросов до async-local контекста. Доклад будет полезен инженерам, которые проектируют или эксплуатируют высоконагруженные сервисы.
speaker photo
Александр Зубаков
Ведущий разработчик информационных систем, Ozon
20:30
Кофе-брейк
Время для нетворкинга и закусок.
21:00
Доклад
Не так давно в .NET появилась JIT-оптимизация — escape analysis и последующий stack allocation. Теперь компилятор умеет раскладывать классы на регистры. В ходе доклада разберёмся, как это работает и где это полезно; проведём черту между тем, когда компилятор может спасти нас от аллокации, а когда только мы сами можем помочь себе. Также рассмотрим, какие ограничения есть у текущей реализации escape analysis и посмотрим, как escape analysis «дружит» с inline. А ещё немного посмотрим исходный код runtime, а также asm, который делает компилятор.
speaker photo
Дмитрий Егоров
Независимый эксперт
21:40
Дискуссия
Обсудим без камер и записи, как меняется культура написания кода вопреки/благодаря внедрению ИИ.
speaker photo
Антон Воронцов
Руководитель группы разработки «Хранение» 4, Ozon
speaker photo
Николай Гущарин
Руководитель группы разработки «Инструменты ВЭД для поставок Global», Ozon
speaker photo
Игорь Лабутин
Архитектор, «Ланит-Терком»
speaker photo
Дмитрий Орлов
Руководитель группы разработки «Хранение» 3, Ozon

Информационные партнеры

partner image
partner image
partner image