"Быстротвечающее" веб-приложение на чем сейчас модно писать?
Нужно минимизировать скорость ответа и нагрузку на сервер.
Приложение — простейшее, ближайший аналог — баннеропоказывалка (т.е. нужно сделать запись туда сюда, авторизировать юзера возможно, определить какой код баннер отдавать и отдать его).
На php код занимает строк 100, но nginx/apache=>php или даже phpdaemon — не айс по нагрузке получается, поэтому хочется перевести на что-то другое.
На чем это сейчас делают? Основное — безглючность и скорость ответа, а так же что бы нормально работало по http с браузерами без проблем.
Была мысль написать на си, но вроде нужен будет вебсервер все равно? Это опять же кажется лишним. node.js тут применим? Если да, то насколько он уже безглючен и шустр и опять же — нужен ли ему вебсервер? Еще какие-то альтернативы? Если к ответу будет прилагаться ссылка на хороший туториал и аргументы — вообще замечательно.
Приложение — простейшее, ближайший аналог — баннеропоказывалка (т.е. нужно сделать запись туда сюда, авторизировать юзера возможно, определить какой код баннер отдавать и отдать его).
На php код занимает строк 100, но nginx/apache=>php или даже phpdaemon — не айс по нагрузке получается, поэтому хочется перевести на что-то другое.
На чем это сейчас делают? Основное — безглючность и скорость ответа, а так же что бы нормально работало по http с браузерами без проблем.
Была мысль написать на си, но вроде нужен будет вебсервер все равно? Это опять же кажется лишним. node.js тут применим? Если да, то насколько он уже безглючен и шустр и опять же — нужен ли ему вебсервер? Еще какие-то альтернативы? Если к ответу будет прилагаться ссылка на хороший туториал и аргументы — вообще замечательно.
Акселератор стоит — zend. Сейчас чтения/записи файлов нет, но 90% что будет (файлы не больше 100кб разовое чтение/запись + plain лог файл на запись). mysql используется — чтение/запись — его время работы более чем устраивает, под кэш стоит memcached (есть желание отказаться, т.к. выигрыш от него порядка 5% всего). Баннер на 50% определяется выборкой из БД, на 50% алгоритмом в пхп коде. Сейчас 98% времени и 75% потребления памяти это вебсервер+пхп, и именно эти параметры хочется урезать в 3-4 раза. edogs,
Простой скрипт c выводом разного контента, Requests per second: 2735.13
Тот же скрипт с файловой операцией (file_put_contents с FILE_APPEND) Requests per second: 2607.34
Тот же с запросом (mysql_pconnect, select 1 из 50000 по ID) Requests per second: 1686.14
Скрипт с инсертом в MyISAM вместо запроса Requests per second: 1729.98
Есть вероятность, что проблема не в языке. Если я всё-таки не прав, то наверное остаётся только написать что-то своё, маленькое и бинарное. Stdit,
у php есть паршивая особенность в FastCGI режиме. он каждый раз запускает скрипт с нуля. нельзя раз запустится, инициализировать библиотеки, открыть соединения, и войти в цикл обработки запросов.
в вашем примере каждый раз устанавливается соединение с базой и парсится запрос. shagguboy,