Мой чистый Ruby класс извлекает имена пользователей из Jira API, чтобы преобразовать его в адрес электронной почты и передать эти адреса электронной почты другому классу, на основе которого извлекается Slack ID.
module Request
class GetUser
def call
setup_email
end
private
def setup_email
devops_email = dev_role['actors'].map { |user| "#{user['name']}@example.com" }
devops_email.each do |email|
::Slack::GetUserId.new(email: email).call
end
end
def dev_role
HTTParty.get('https://company_name.atlassian.net/rest/api/3/project/1234/role/1234',
basic_auth: { username: 'user', password: 'pass' },
headers: { 'content-type' => 'application/json' })
end
end
end
Потому что выше класс будет называться каждый день (AWS лямбда-график), я хочу ускорить класс. Что я должен использовать для достижения этого? Должен ли я использовать какую-то базу данных (возможно, Dynamodb?) Для сохранения пользовательских данных (userID и user email) и сделать запрос, чтобы проверить, изменились ли данные (например, имя пользователя)?
Или, может быть, я должен изменить какую-то реализацию и оставить эти запросы без сохранения данных в базе данных?