Разработка
JavaScript и TypeScript, Node.js и PHP. Код приложения и связи между его частями.
Я веб-разработчик. Работаю с JavaScript, TypeScript, Node.js и PHP. Интересуюсь архитектурой веб-сервисов и тем, что происходит за пределами приложения: инфраструктурой, сетями и взаимодействием сервисов.
Предпочитаю разбираться в том, как устроена система. Учусь через реальные задачи: проверяю гипотезы, собираю решения и улучшаю их.
JavaScript и TypeScript, Node.js и PHP. Код приложения и связи между его частями.
Docker, self-hosted сервисы, P2P. Интересно понимать весь путь — от запроса до инфраструктуры.
Сначала понять причину, затем проверить предположение. Выбирать решения, сложность которых оправдана задачей.
Небольшие тексты о том,
что интересно разбирать глубже.
Каждый новый слой добавляет ещё одно место, которое нужно понимать и поддерживать. Абстракция полезна, когда у неё есть конкретная работа: убрать повторение, отделить изменяющуюся часть или сделать границу понятнее.
Полезный вопрос при проектировании: какую проблему решает этот слой прямо сейчас? Если ответ существует только в воображаемом будущем, решение можно отложить. Простую структуру легче проверить и изменить, когда требования станут яснее.
Self-hosting делает устройство сервиса видимым: где находятся данные, как идут запросы и от чего зависит доступность. Вместе с контролем появляются обычные инженерные задачи — обновления, наблюдаемость и восстановление.
Хороший практический вопрос: можно ли восстановить сервис на чистой машине? Ответ складывается из конфигурации, сохранённых данных и понятного порядка действий. Резервная копия становится особенно полезной после проверки восстановления.
Приложение зависит от версии среды выполнения, настроек, базы и внешних сервисов. Если всё это существует только в памяти разработчика, воспроизведение окружения превращается в отдельную задачу.
Docker помогает описывать существенную часть среды явно. При этом остаются вопросы: какие данные должны пережить пересоздание контейнера, как передаются настройки и в каком порядке готовы зависимости? Полезно проверять запуск с нуля, а не только повторный старт уже настроенной системы.
«Сервис недоступен» описывает симптом, но ещё мало говорит о причине. Полезно пройти путь запроса последовательно: разрешение имени, маршрут, соединение, затем ответ приложения.
Каждая проверка должна сужать область поиска. Так результаты диагностики складываются в объяснение происходящего, а следующая команда проверяет конкретное предположение.
Вывод: about, stack, notes, contact.
Переход: go about, go notes, go contact.
Начните с
↑ ↓ история · Tab дополнение
Добро пожаловать на habroff.ru
Введите help, чтобы посмотреть команды.
Обсудить работу, технический вопрос
или совместный проект — пишите.