tgoop.com/hft_dev/35
Last Update:
В продолжение предыдущего поста: был ещё вопрос "какие пет-проджекты можно поделать, чтобы на собесе это зачлось". Я подумал, и написал одну задачу (даже целый проект по объему), субъективно наиболее подходящую для инженера в core команду. Это не гарантирует успеха, и одновременно не является необходимым, но может помочь получить подходящие знания, доверие от интервьювера или вашу уверенность в общении.
Задача: разработать готовый к использованию механизм для shared memory IPC с минимальными задержками на передачу данных. Продумайте:
- как связывать между собой два процесса, по какому пути/ключу/id
- как сериализовать сложные структуры
- способ нотификации другого процесса о записанных данных, и синхронизации чтения и записи
- масштабирование: как будет работать механизм при увеличении количества читателей
- обработка падений и читателя и писателя
- версионирование
- обработку ошибок
- тесты
- обработку переполнений буферов
- запись метрик (время [де]сериализации, время реакции) в прометеус
- сравнить с другими 1-2 способами IPC в Linux
- сравнить с другими реализации на github
BY Один микросек - C++, low latency, concurrency, HFT
Share with your friend now:
tgoop.com/hft_dev/35