- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Это не holy war, просто нужен совет.
Делаю серверную часть некоторого API.
PHP скрипт получает GET запросы с различных хостов, их анализирует на корректность и заносит в базу. Планируется в больших количествах, до пары десятков запросов в секунду, точнее оценить пока не могу. Явно больше 1 в секунду. Для выполнения и выдачи результата будет делаться максимум 2 MySQL запроса, но скорость отдачи результата важна.
Вообщем, Apache отпадает сразу, т.к. я уже знаю что это закончится дракой за память либо расходами на VPS с 2-4 Гб ОЗУ.
Что лучше ставить для такой задачи к PHP - nginx или lighttpd?
Интересует мнение профессионалов о производительности и сложности настройки.
С установкой lighttpd дело имел 2 раза на разных ОС, в одном из 2 случаев PHP не стал, разбираться не пришлось т.к. то был сервер для статики, пхп ставил "чтобы было" на будущее, чтобы убедиться что работает и отключить в конфиге.
С nginx дело имел только как с фронтендом к апачу (в предустановленном виде, образ ОС от хостера), насколько сложно к нему прикрутить пхп буду смотреть.
Одинаково по скорости будут. В nginx гораздо гибче конфигурация. Перешел на него где то после двух лет использования lighttpd , в общем не пожалел ни разу.
Единственный минус - нет cgi-bin, надо делать через враппер. А во всем остальном, лайт проигрывает. Поддержка слабая, фактически не развивается. В настройке лайт гораздо легче, но там и настраивать особо нечего.
nginx + PHP-FPM (не понятно, правда, зачем вам nginx в вашей задаче, сам он с PHP никак не работает)
Лайти на мой взгляд намного проще и понятнее в настройке и с ним быстрее можно достичь идеального конфига и максимальной производительности.
Stek, лайти развивается. И развивается он по своему направлению как вебсервер, а нгинкс изначально это прокси. "Медленно" лайти развивается потому что добавляется только самое необходимое, чтоб не стать вторым апачем.
Если будет до пары десятков запросов в секунду, то лучше писать демон на С, который будет обслуживать запросы через сокет.
Я писал демон для одного чата.
Задача требует хорошего знания С и API линукса.
Пара десятков запросов в секунду для нормального сервака это вообще ниочём.
К примеру, на одном серваке у меня сейчас 224 mysql запроса в секунду к базе под 40 гиг. LA меньше единицы. Правда, сервак достаточно суровый.
И на чём всё это делать при 20 запросах - тоже без разницы.
Всё зависит от того - как вы эти запросы пишете и организации базы.
Сам уже давно с апача ушёл на лайти, а потом перешёл на nginx ибо в лайти не было необходимого мне функционала.
Мискуль будет проблемным местом
Спасибо за советы.
cgi-bin ни к чему, главное чтобы веб сервер вызвал и обработал пхп скрипт.
Для nginx вроде бы PHP-FPM - единственный вариант.
Раз по производительности одинаково, буду использовать lighttpd т.к. имел дело с ним и говорите что в настройке проще.
То что БД прийдется оптимизировать это уже неоспоримый факт.
90% нагрузки будет создаваться скриптом вида
Далее немного других запросов (порядка раз в минуту) и панелька для визуализации статистики, графиков итд - это по нагрузке существенно больше запросов, но они намного реже, потому не учитываю.
Задача требует хорошего знания С и API линукса.
Демон дело хорошее, я думал над этим. Но все таки решил делать на PHP, он не компилируемый и если что можно быстро что-то обновить, не останавливая демон.
Демон дело хорошее, я думал над этим. Но все таки решил делать на PHP, он не компилируемый и если что можно быстро что-то обновить, не останавливая демон.
Демон для обновления не нужно останавливать на долго, максимум пару секунд
Компилируете новый исполняемый файл.
Меняете старый файл на новый.
И даете команды с интервалом пару секунд.
/etc/init.d/namedaemon start
/etc/init.d/namedaemon stop
Откомпилированный код на С работает быстрее кода на PHP примерно в 40 раз.
Хотя если у вас основная нагрузка ложится на mysql то выигрыша от демона на С будет не много.
Максимальный выигрыш в скорости будет, если вы вообще без mysql сделаете и все будете хранить в оперативной памяти.