В данный момент стоит вопрос о разработке высокопроизводительного веб-приложения, которое могло бы выдерживать миллионы хитов в день.
Целевая нагрузка от 1000 хитов в секунду и выше (вплоть до заполнения гигабитного канала).
Имел ли кто-либо из читателей опыт разработки веб-приложений на С++? Предлагаю обсудить сложности и ограничения.
Подразумевается что приложение не будет иметь утечек памяти(и соответственно проблем со стабильностью), и 2-3-х кратное увеличение цены разработки по сравнению с PHP приемлимо.
Какие варианты вижу я:
Для всех вариантов: сервер обрабатывает только динамический контент, вся статика на отдельных серверах / CDN.
1) fastcgi модуль Apache/nginx, хранит всю нужную информацию в памяти, изредка сбрасывая критичные данные в MySQL (ну и сложные но редкие запросы можно в MySQL)
2) сам себе апач: приложение само обрабатывает HTTP запросы, используя например имеющуюся реализацию в библиотеке Poco
3) Забить на C++ и сделать на PHP+APC с кешированием данных внутри APC.
4) Забить на C++ и сделать на PHP+APC с кешированием данных внутри memcached, сразу расчитывая ставить кучу серверов.
Какие мнения?
Целевая нагрузка от 1000 хитов в секунду и выше (вплоть до заполнения гигабитного канала).
Имел ли кто-либо из читателей опыт разработки веб-приложений на С++? Предлагаю обсудить сложности и ограничения.
Подразумевается что приложение не будет иметь утечек памяти(и соответственно проблем со стабильностью), и 2-3-х кратное увеличение цены разработки по сравнению с PHP приемлимо.
Какие варианты вижу я:
Для всех вариантов: сервер обрабатывает только динамический контент, вся статика на отдельных серверах / CDN.
1) fastcgi модуль Apache/nginx, хранит всю нужную информацию в памяти, изредка сбрасывая критичные данные в MySQL (ну и сложные но редкие запросы можно в MySQL)
2) сам себе апач: приложение само обрабатывает HTTP запросы, используя например имеющуюся реализацию в библиотеке Poco
3) Забить на C++ и сделать на PHP+APC с кешированием данных внутри APC.
4) Забить на C++ и сделать на PHP+APC с кешированием данных внутри memcached, сразу расчитывая ставить кучу серверов.
Какие мнения?