Post Thumbnail

Автор рассказывает про самый быстрый парсер протобафа - hyperpb.

Традиционно серверные части Protobuf генерировали парсеры, создавая исходный код, специализированный для каждого типа. На первый взгляд, это обеспечивало наилучшую производительность, поскольку все было «подстроено» под конкретный тип сообщения. К сожалению, теперь мы знаем, что у этого подхода есть ряд недостатков.

Самый главный недостаток - каждый тип данных увеличивает нагрузку на кэш инструкций. Это означает, что если ваша программа обрабатывает множество различных типов данных, то при каждом обращении к парсеру кэш инструкций будет очищаться. Что ещё хуже, если при разборе используется много разных типов данных, то сам парсер столкнётся с проблемами пропускной способности при декодировании инструкций.

Читаем, как автор обошел эти проблемы

Похожее

Post Thumbnail

Линкер

Автор разбирает как работает линковщик в компиляторе. У него уже большая пачка с...

Post Thumbnail

uForwarder

Инженеры Uber рассказали, как им жилось с огромным кластером Kafka и почему они ...