Веб-разработка на C++: от основ до деплоя
Современные фреймворки, HTTP-серверы и микросервисы на C++17/20
Краткое содержимое:
Вопреки стереотипам, C++ — это не только системное программирование и игровые движки. Современный стандарт C++17/20, мощные библиотеки (Boost.Asio, Crow, Drogon, Pistache) и зрелые инструменты сборки (CMake, Conan) делают C++ отличным выбором для высоконагруженных веб-сервисов, API-шлюзов и микросервисов. Эта книга — первое в рунете полноценное практическое руководство, которое проведёт вас от настройки окружения до продакшен-деплоя веб-приложения на C++.
О чём книга
- Основы HTTP и сетевого программирования — архитектура клиент-сервер, протоколы, сокеты, асинхронный ввод-вывод с Boost.Asio.
- Фреймворки и библиотеки — обзор и сравнение Crow, Drogon, Pistache, oatpp; выбор под свою задачу.
- REST API и JSON — проектирование эндпоинтов, сериализация/десериализация через nlohmann/json и Boost.JSON.
- Базы данных — работа с PostgreSQL через libpqxx, SQLite через sqlite_orm, пулы соединений.
- WebSockets и реальное время — чаты, уведомления, стриминг данных.
- Безопасность — защита от SQL-инъекций, XSS, CORS, JWT-аутентификация на C++.
- Тестирование — юнит-тесты (Google Test), интеграционные тесты, нагрузочное тестирование с wrk.
- Сборка и CI/CD — CMake + Conan, Docker-контейнеризация, деплой на VPS, Kubernetes.
Для кого эта книга
Книга рассчитана на C++-разработчиков с опытом от 1 года, которые хотят расширить свои навыки в веб-направлении. Вы уже знаете синтаксис, шаблоны, STL и CMake — здесь вы научитесь применять их для создания production-grade веб-сервисов. Также книга будет полезна бэкенд-разработчикам на других языках (Java, Go, Python), желающим освоить C++ для высоконагруженных компонентов.
Что вы узнаете и сможете делать после прочтения
- Спроектируете и реализуете RESTful API с нуля на C++.
- Настроите асинхронный веб-сервер, обрабатывающий тысячи запросов в секунду.
- Интегрируете PostgreSQL и Redis в своё приложение.
- Реализуете аутентификацию через JWT и OAuth2.
- Напишете тесты и настроите автоматическую сборку в GitHub Actions.
- Упакуете приложение в Docker-образ и развернёте на удалённом сервере.
Каждая глава содержит практические примеры кода, готовые к компиляции и запуску. Все проекты доступны в репозитории на GitHub. К концу книги вы создадите полноценный микросервис для управления задачами (Task Manager API) с поддержкой WebSockets, кэшированием и авторизацией.
Не бойтесь сложностей — автор последовательно раскрывает все тонкости, от выбора HTTP-библиотеки до оптимизации производительности и мониторинга. Эта книга станет вашим надёжным путеводителем в мир веб-разработки на C++.
<<