Разбираем net/http на практике. Часть 2.2: Архитектура и безопасность. Внедряем Clean Architecture, хэшируем пароли

Продолжаем писать сервис DeadDrop: сегодня идём от монолита к чистой архитектуре В предыдущей части мы реализовали готовый прототип, но его код был спорным: от смешанной логики до хранения секретов пользователей в открытом виде - пора вносить правки! Сегодня мы: 1) Превращаем "толстый" хэндлер в...

Все блоги / Про интернет

Топ-8 опенсорс‑инструментов, которые необходимы разработчику в кубере

Open source инструменты удобны для разработчика: настраиваешь их под себя и не зависишь от чужих правил, ценников и внезапных ограничений. Плюс вокруг них обычно есть живая документация и комьюнити — проблемы и решения редко остаются «в вакууме». Собрали с командой R&D список инструментов, которыми...

Все блоги / Про интернет

L4-балансировка и защита от DDoS-атак

В высоконагруженных системах балансировка трафика быстро перестаёт быть просто задачей распределения запросов. Сегодня на реальном опыте разбираем путь от BGP Anycast к L4-балансировке и XDP: зачем она понадобилась, как помогла справиться с ограничениями Anycast, повысить отказоустойчивость и...

Все блоги / Про интернет

Разбираем net/http на практике: пишем веб-сервис DeadDrop для безопасного обмена сообщениями

Первая часть цикла «Разбираем net/http на практике»: создаём с нуля сервис DeadDrop — аналог Privnote для безопасной передачи самоуничтожающихся сообщений и файлов. На чистой стандартной библиотеке net/http разбираем основы: • запуск HTTP-сервера • маршрутизация в ServeMux • написание middleware...

Все блоги / Про интернет

WebSocket: просто о сложном. Часть 2 — практическое применение и тонкости

С вами снова Юля, системный аналитик из EvApps и мы продолжаем разбираться в технологии WebSocket. В первой части (WebSocket для начинающих системных аналитиков: просто о сложном. Часть 1), мы познакомились с основами WebSocket, а теперь давайте заглянем под капот реального сайта, например,...

Все блоги / Про интернет

Важные советы backend-разработчику: защити себя от нежелательных проблем

Чем больше у backend-разработчика знаний в своей области, тем лучшим специалистом он является. Но опыт показывает: самые классные программисты подобны Сократу, который не стеснялся заявлять во всеуслышание «scio me nihil scire», что в переводе на общенародный - «я знаю, что ничего не знаю»....

Все блоги / Про интернет

Механизмы авторизации в web-приложениях на Rust

Для обеспечения безопасности приложений мы используем такие довольно известные механизмы, как аутентификация и авторизация. В этой статье мы сфокусируемся на понятие авторизации и связанных с ней моделях контроля доступом. А также рассмотрим решения для web-приложений на Rust. Читать далее...

Все блоги / Про интернет