Лучшая реализация веб-сервиса с огромным списком поиска - PullRequest
0 голосов
/ 24 января 2012

Я планирую предложить простой веб-сервис поиска фраз.количество фраз составляет около 3-5 миллионов записей, а каждая запись менее 50 символов.Услуга довольно проста, если указанная пользователем фраза находится в списке, возвращает true, а в противном случае возвращает false.Итак, на стороне сервера, я должен просто поместить записи в базу данных mysql и запрашивать их всякий раз, когда входит фраза пользователя?Есть ли другая реализация, которая более эффективна?т. е. быстрее, меньше памяти, более масштабируемый с точки зрения объема запросов и т. д. Или следует загружать его в память?

Буду признателен за любые отзывы, идеи и мнения!

Ответы [ 3 ]

0 голосов
/ 24 января 2012

Это действительно зависит от того, сколько у вас будет одновременно работающих пользователей.

Если у вас много запросов в секунду, сохраните данные в памяти (похоже, вам нужно их много), например, memcached. Иначе, используйте базу данных.

Или используйте оба варианта: если данные не являются кэшем (memcached), загрузите из базы данных и сохраните в ней память для будущих нужд.

0 голосов
/ 24 января 2012

MySQL должен обрабатывать 5 миллионов записей без каких-либо проблем.

На вашем месте я бы создал базу данных и протестировал бы ее локально с 5 миллионами и 50 миллионами строк псевдослучайных данных.

Если вы можете симулировать много одновременных соединений, то сделайте это.Если нет, просто расскажите об этом, скажем, 100 заинтересованным пользователям.

Вести учет.Используйте аналитику.

0 голосов
/ 24 января 2012

Выезд Memcached и Redis .Простой в использовании и быстрый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...