Ruby: сделать строковый кеш, который быстрее: массив или SQL? - PullRequest
3 голосов
/ 23 ноября 2010

Я делаю рубиновый сервер с кэшем информации об онлайн-клиентах.Эта информация должна быть сохранена, когда я выключаю сервер.Я могу сохранить его в простом массиве и сохранить с помощью Marshal или использовать базу данных SQL (MySQL, вероятно).Какой лучше использовать?Я думаю, что метод Array проще, но SQL быстрее, чем?Спасибо!

Ответы [ 2 ]

4 голосов
/ 23 ноября 2010

Это зависит от требований к масштабируемости. Если вы ожидаете тысячи записей, вам следует использовать SQL или другую БД, хотя это налагает накладные расходы на разработчиков. Однако, если вы имеете дело с небольшим числом, вы можете просто сериализовать объекты и сохранить их на диск.

3 голосов
/ 23 ноября 2010

На самом деле я ожидал бы, что хранение сериализованного массива будет значительно быстрее, так как не нужно выполнять индексацию или выделение дополнительных строк. Я думаю, что все зависит от того, хотите ли вы иметь возможность выполнять запросы на информацию. Если нет, вам не нужна база данных, вам просто нужна настойчивость. Тогда вы можете записать кеш в файл.

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