- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Предполагаю сделать примерно следующее: на сервере будет лежать скрипт, который будет принимать все аяксы и возвращать браузеру запрошенные данные.
Получается, что при каждом таком запросе (а их будет, наверно, довольно много, хотя бы по-тому, что предполагается ежесекундно (ну хорошо, пусть раз в 10 секунд) запрашивать сервер не появились ли новые сообщения) скрипт будет запускаться, создавать подключение к БД, препарить запросы к БД, потом, соответственно, завершать свою работу.
Такой подход не кроет в себе какие-либо проблемы масштабируемости? Или я зря парюсь и все это (запуск и завершение скрипта, создание подключения к БД, подготовка запросов...) делается достаточно быстро и не слишком затратно с т.з. ресурсов сервера?
Мне кажется, конечно, было бы лучше что бы скрипт все время был запущен, запросы к БД подготовлены и все такое. Но это же точно не PHP? А я ничем другим по сути и не владею...
Какие ваши мысли, господа?
Вы еще в самом начале пути так то и про масштабируемость пока что забудьте. Все что вы описали может как создавать много нагрузки, так и не создавать вообще, все зависит от архитектуры вашего приложения, а не от конкретных технологий. Тем более "горячие" данные можно положить в такие БД как redis например в оперативку (а именно флаг новых сообщений) и пока он "выключен" сами сообщения не запрашивать.
Вместо того, что спрашивать сервер, не появились ли сообщения, можно просто напросто посылать эти сообщения клиенту напрямую через Websocket. Таким образом, можно сократить "холостые" обращения к серверу, и снизить нагрузку. Конечно, можно и AJAX например, если не слишком часто (раз в минуту например), но если у вас какое-то критическое приложение, где вам нужно каждые две секунды выводить на экран информацию (например, позиции в гонках, ставки на аукционах и прочее), то лучше конечно использовать WS.
Под WS лучше использовать что-то вроде NodeJS или Go, PHP в риал-тайм не сильно, хоть библиотеки и есть, но это чистой воды секс с резиновой женщиной.
Как вам выше написали, ненужно страдать преждевременной оптимизацией, потому что потратите время не добравшись до сути, однако и костылями обматываться тоже не стоит, потому что когда дело дойдет до масштабирования, придется все писать с нуля.