Статьи

Gotcha — self-hosted observability на своём сервере

Gotcha — self-hosted observability на своём сервере

Коротко: Gotcha — self-hosted observability (ошибки, аптайм, трейсы, метрики, профили) в одном Go-бинарнике на PostgreSQL и ClickHouse; совместим с Sentry SDK. Gotcha — это self-hosted observability-платформа: трекинг ошибок, мониторинг аптайма, распределённый трейсинг, метрики и профилирование…

Реверс-инжиниринг легаси без документации: история микросервиса

Реверс-инжиниринг легаси без документации: история микросервиса

Коротко: разобраться в чужом легаси без документации — методичная работа: карта системы по точкам входа, БД и логам, характеризационные тесты перед изменениями. Разобраться в чужом коде без документации — это не магия, а методичная работа: восстановить карту системы по точкам входа, БД и логам…

Быстрый дебаг с Xdebug: настройка и приёмы

Быстрый дебаг с Xdebug: настройка и приёмы

Коротко: Xdebug — пошаговый отладчик PHP вместо var_dump: breakpoint, просмотр переменных и стека; настраивается за 10 минут, в т.ч. в Docker. Если вы всё ещё отлаживаете PHP через var_dump(); die(); — Xdebug сэкономит вам часы. Это пошаговый отладчик: ставите breakpoint, останавливаете выполнение…

Как решать конфликты в мерж реквесте

Как решать конфликты в мерж реквесте

Коротко: конфликт merge возникает, когда в ветках изменены одни строки; решается вручную в консоли, через PhpStorm или пересборкой ветки. Конфликт при merge в Git возникает, когда в разных ветках изменены одни и те же строки одного файла и Git не может сам выбрать нужный вариант. Решается это тремя…

Как профилировать код на php

Как профилировать код на php

Коротко: профилирование — поиск узких мест по времени и памяти; оптимизировать нужно по данным, а не наугад. Инструменты и приёмы для PHP. Профилирование — это поиск узких мест в коде: где тратится время и память, какие функции и запросы тормозят. Профилировать стоит, чтобы оптимизировать…

Нужна разработка или консультация?

Опишите задачу — отвечу и предложу формат работы.

Обсудить задачу