this->notes.
описание
О разработке, архитектуре и C++. Tags: #common, #cpp, #highload и другие можно найти поиском. Задачки: #poll. Мои публикации: #pub. Автор и предложка: @vanyakhodor. GitHub: dasfex.
Лучшие посты
за три месяцабез подписи
без подписи
без подписи
без подписи
СОБИРАЮ ВАШИ ИСТОРИИ. Вас тут относительно много. Вы умные. Вы работаете и занимаетесь интересными вещами. А я почему-то этим не пользуюсь! Я бы хотел про них узнать и может заодно поделиться с подписчиками! Расскажите про самую интересную оптимизацию, которую вы сделали. Это может быть что угодно. Ускорили запрос в БД. Поменяли способ хранения данных (может это буквально vector -> unordered_map). Перепридумали архитектуру. Отсортировали данные, чтобы они в кеш легли. Удалили неиспользуемые данные. Сократили использование железа (может вы даже стали медленнее из-за этого, но вам это ок). Скомпилировали иначе. Перешли на новую технологию. Рассказали коллегам, как экономить время в рутинных делах. Перестроили процесс в нескольких командах. Вообще что угодно. Не обязательно сложное. Ведь иногда принести профит небольшими изменениями даже круче. Главное, чтобы вам это по какой-то причине нравилось. Может вы вообще не про оптимизацию хотите рассказать, а как вы её нашли/придумали. Что угодно, что можно притянуть к этому слову! Формочка: https://forms.gle/8o5d9zDDcsdzc41u6
без подписи
без подписи
#cpp и не только. НАПОМИНАЮ, что 1ого августа будет Back to Back: в Москве back to back трек + C++ трек, в Ереване только back to back, а в Белграде только C++ one. Программу на плюсовый трек мы собрали сочную. Старались, честное слово. Коллеги по цеху на Back to Back тоже интересного выбрали. Меня, дай бог всё будет хорошо, сможете найти в Белграде. Можем с вами за здоровье Страуструпа выпить ракии (хотя я ещё её не пробовал, может и не моё). Буду стараться за неделю после конфы выдать трип репорт. У вас ещё есть время зарегистрироваться!
#highload Я не очень понял, как это работает. Видосы на самом канале так и не появились, хотя прошло уже больше года с конференции. Плейлист со всеми докладами доступен, и видео выложили год назад. Доступ к ним явно есть. Но просмотров нет. То есть как-то никто и не в курсе, что их можно смотреть. Доклады с Saint HighLoad++ 2025. 0. Эволюция векторного поиска в YDB. Александр Зевайкин. Есть ещё в тексте (правда не уверен, что контент 1 в 1). 1. Технологии распределенной карты для автономного транспорта. Гоша Лутидзе. Прикольное введение в кусок вот этих самоездящих штук. 2. 20 лет на граблях: ошибки, отказы и выводы. Александр Стерлигов. Несколько кайфовых историй про разные инциденты. Я тоже такое сделаю когда-нибудь. 3. Взгляд за кулисы Яндекс Карт: от сырых спутниковых данных до четких изображений. Игорь Орпанен. 4. Четыре девятки хватит всем? Разбираемся с доступностью дата-центров. Алексей Учакин. Доклад про датацентры, как они устроены с точки зрения пользователя, что вам обещают и (не)гарантирует. 5. Почему в космосе (пока) нет дата-центров. Александр Токарев. Ещё один доклад про датацентры, но в космосе. Приятный научпоп. 6. Про избыточность WAL в Postgres. Андрей Бородин. Интересное для понимания устройства WAL в pg. Не то, чтобы я запомнил что-то, но удовольствие получил. Факт, который понравился: в pg есть лагающая реплика. Вы можете сделать реплику, в которой всё применяется с задержкой в час, и при факапе остановить её обновление + переключиться на неё. У меня коллеги когда-то делали похожую штуку, но на уровне приложения. Фиксировали набор табличек, которым нужно делать снапшоты (раз в час и сутки, например). И если источник данных накатил что-то неправильное, из-за чего не получается клиентам отдать данные, мы (как промежуточное звено) могли руками включить чтение из подходяшего снапшота. Пару раз помогло восстановиться на инцидентах за минуты.
без подписи
без подписи
без подписи
без подписи
без подписи
без подписи
без подписи
#cpp Привет. Сегодня последний day 52 марафона. Я знаю, что кому-то он поднадоел. Не зря от меня отписалось больше полусотни человек. Мне тоже надоело, если честно. Если вдруг вы не узнали/не знали, марафон был основан на C++ Preprocessor Iceberg. Я в целом шёл от начала почти по каждому пункту, скипая что-то, что выглядит совсем мутным и невнятным, что я не смог заставить работать или не смог осознать. Попутно старался дополнять своим ресёрчем. Постов фактически вышло на пару десятков меньше, чем пунктов в оригинальном источнике. Мы примерно на половину задели Deep water и совсем не задели The abyss. К концу я уже высох от темы и решил, что душить себя не очень полезно. Лучше чем-то в радость позаниматься. Так что заинтересованные могут доисследовать самый низ айсберга. Расскажите в комментах, как вам. Надо такое делать вообще ещё когда-нибудь? На какие темы? Или нахер и лучше ограничиться обычными форматами? Не факт конечно, что я ваше мнение учту, но мне хочется его знать. Если не хотите писать открытым текстом, то вот варианты quite feedback: 🔥 — круто, можно повторять 🥴 — круто, можно повторять, но слишком долго 🤯 — круто, лучше не повторять 🌚 — не круто, лучше не повторять. Ниже собрал ссылочки для удобства. Пересылайте друзьям, мамам и папам. Пользуйтесь в будущем сами. Above the iceberg: • #include • include guards • #pragma once • #if • заворачивание в скобки • do-while • ARRAY_SIZE и sizeof On the iceberg: • stringification operator • token concatenation operator • __VA_ARGS__ • #undef • #error • comments concatenation • X-macro Below the water: • FILE and LINE • DATE and TIME • #line • триграфы и иже с ними • _Pragma • -E Middle of the iceberg: • COUNTER • CONCAT • #elifdef #elifndef • #embed • SCAN • лимит на макросы • mcpp • перегрузка макросов • default args в макросах Bottom of the iceberg: • blue paint • BOOL, IF • INC/DEC • LOOP • Boost.Preprocessor Below the iceberg: • LIST • ORDER_PP • #assert • #include_next • ppstep • how macro expansion works • sequence Deep water: • итерация по sequence • chaos-pp • Metalang99 • не знаю точно что это • push/pop макросов • ещё несколько ссылочек
без подписи
без подписи
без подписи