@lolrofl01

Сильно ли нагружает ajax поиск сервер и какие есть аналоги?

Привет!
Необходимо на сайте сделать поиск в реальном времени, т.е. вводишь в него от 2 букв и выше, и посылается аякс запрос, далее поиск выполняется по БД, возвращаются результаты, содержащие эти 2 буквы. Далее юзер вводит третью-четвертую и так далее. С каждой буквой ситуация повторяется, пока не появятся результаты, необходимые юзеру.

Понятно, что грамотно ответить на вопрос сильно ли нагружает сервер без данных сервера, таблицы бд, типа поиска - нельзя. Но все же в теории сильно ведь грузит, особенно если учесть, что за раз может по 50-100 человек пользоваться поиском, создавая каждый десяток аякс запросов. И какой аналог есть у такого поиска? Но обязательно, чтобы также с вводом каждой буквы выпадали результаты, все больше похожие на то, что юзер ищет.

Спасибо!
  • Вопрос задан
  • 207 просмотров
Решения вопроса 2
DevMan
@DevMan
однозначных решений нет. есть:
- делегирование: сервисы типа algolia. в минусах - платность, хотя при определенных условиях может быть и бесплатно.
- горячий кэш на быстрых хранилищах. в минусах - необходимость определения что чаще ищут, хотя иногда можно и чуть ли не все туда воткнуть.
- обычный поиск.

в реальности: 50-100 человек отправляющих одновременно запросы - не проблема для любого современного сервера. конечно, если код не писали распоследние слоупоки.
Ответ написан
Комментировать
dima9595
@dima9595
Junior PHP
Нагрузка будет зависит от алгоритмов и ПО которое вы используете. Так что на счёт нагрузки, как вы заметили, сложно дать однозначный ответ.
Необходимо правильно написать алгоритм для поиска. Желательно хотя бы 3-4 буквы начал искать. Это зависит от ваших потребностей. Так же нужно сделать так, что бы пользователь сначала ввёл нужные данные (буквы), и только с небольшой задержкой начался поиск.
Так же есть специальные модули/движки (называют по разному) для поиска (сфинкс и т.п.) (В этом не шарю). Которые оптимизированы под такие задачи.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы