0

Я работаю над приложением Rails, которое должно быть масштабируемым, по меньшей мере, для 100 тыс. Пользователей. Но, когда мы заполнили достаточно данных в нашей БД, это значительно замедляется, и мы планировали использовать ElasticSearch в качестве лечения. Мой вопрос в основном связан с листинговым списком пользователей, который у меня на моем сайте, где определенная функция имеет интенсивность процессора, и мы хотим проиндексировать эту функцию.ElasticSearch: индексируйте результаты метода, который имеет аргументы

Итак, вот улов. У этой функции есть аргументы, которые мы не можем избежать, и я не нашел никакого примера, который мог бы предложить мне, как я могу передать аргументы индексированным функциям.

Вот вопрос, который я нашел полезным: Index the results of a method in ElasticSearch (Tire + ActiveRecord)

ответ

1

вы могли бы попробовать написать что-то вроде:

def to_indexed_json 
    { field: method(args) }.to_json 
end 

или даже без to_indexed_json вы могли бы написать:

mapping do 
    indexes :field_name 
end 

def field_name 
    your_method(args) 
end 
Смежные вопросы