Стандартный мониторинг часто пропускает «тихих убийц» — запросы, которые по отдельности кажутся нормальными, но в сумме создают аномальную нагрузку на СУБД. В итоге система живет в хрупкой идиллии до первого аврала.В статье — описание универсального способа контроля качества кода и нагрузки на базу без выделенного DBA. Пошагово разберем поиск неоптимальных запросов с помощью pgBadger на живом кейсе. Читать далее
Push-уведомления сами по себе — полезный инструмент для легальной коммуникации с пользователями: новости, события, обновления сервисов.Однако существуют вредоносные SDK, которые используют Push API для скрытого спама, трекинга и монетизации через сторонние рекламные серверы. Они…
В прошлых частях мы поговорили о том, как происходит регистрация объектов в сборщике мусора, о том как происходит планирование и вызов сборки мусора, что такое молодое поколение и как устроена для него сборка мусора. В этой части пришло время поговорить об инкрементальной…
По просьбе подписчика моего ТГ-канала публикую список источников для самоподготовки. Легендарные вещи, полностью изменившие мои взгляды на индустрию. Читать далее
Ваш LLM-агент забывает цель через 10 шагов? Контекст "гниёт" на длинных документах? Модель галлюцинирует? Разбираем 10 реальных проблем LLM-приложений и паттерн RLM, который их обходит — без замены модели. С примерами кода и FAQ для новичков. Читать далее
Я люблю простые костыли.Когда требуется сериализовать некоторые поля в какой-то текстовый формат,бывает удобно использовать промежуточное представление данных вида:// Name/Value itempublic class NVItem { public string? Name; public object? Value; public IEnumerable? SubItems; public NVItem(string? name, object? value) { Name = name; if (value==null) return; SubItems
Всем привет! Порассуждаю на тему махинаций относительно количества рабочих часов и как их уменьшение может быть полезно работодателю Читать далее
Допустим, вы написали код для решения задачи, которая хорошо распараллеливается. Каждый поток занимается своим участком работы и не зависит от других, поэтому потоки почти не должны координироваться друг с другом, за исключением самого последнего этапа, когда требуется…
Начнем данную статью с казалось бы простого вопроса: "Кто такие клиенты и зачем их считать?". Ответ на данный вопрос не такой простой и вообще философский! Каждая компания и человек в отдельности ответят на него по-своему.В телеком компании вам скажут: "Клиент = абонент. Мы считаем…
Существует ли такая задача или класс задач, в которых машина вынуждена демонстрировать разумное поведение, а не просто оптимизировать заранее заданную цель? Читать далее