Нужен способ временного хранения массового пользовательского ввода для последующего анализа, проверки и создания ActiveRecords, используя rails - PullRequest
0 голосов
/ 27 апреля 2020

Мне нужно синхронизировать c телефонные контакты пользователя с моим приложением с помощью API-интерфейса rails. Внешний интерфейс отправляет дамп всех контактов, а внутренний должен анализировать, проверять и создавать ActiveRecords в асинхронном c задании. У меня проблемы с оценкой и выбором временного хранилища, из которого процесс asyn c может потреблять ввод. Я рассматривал Redis, но хотел бы знать, есть ли еще варианты и какие параметры следует учитывать при их оценке. Вот некоторые из параметров, о которых я мог подумать: 1. Скорость записи данных, которые должны быть выгружены. 2. Безопасное хранение данных, например, экранирование перед сохранением

. Любые предложения или ссылки будут полезны. Спасибо!

1 Ответ

0 голосов
/ 27 апреля 2020

Если вы используете Sidekiq в качестве фонового обработчика заданий, вы можете просто передать всю полезную нагрузку в качестве аргумента задания. Он будет сохранен в Redis, а затем легко доступен в фоновом режиме (без извлечения из любого магазина, Sidekiq сделает это за вас из коробки).

Redis довольно хорош в обработке больших полезных нагрузок, одного объекта в Redis может занимать до 512 Мб, поэтому не бойтесь хранить здесь даже 100 тыс. контактов.

...