Rails 3 & MailChimp - ускорение - PullRequest
       7

Rails 3 & MailChimp - ускорение

1 голос
/ 07 февраля 2011

В настоящее время у меня есть приложение Rails 3, которое подписывает новых пользователей на MailChimp. Как часть моей пользовательской модели, у меня есть это:

after_create :add_user_to_mailchimp
before_destroy :remove_user_from_mailchimp
before_save :update_mailchimp_values

Затем, каждое из этих трех действий является некоторой вариацией этого:

def add_user_to_mailchimp  
  mailchimp = Hominid::API.new(MAILCHIMP_API_KEY)
  list_id = mailchimp.find_list_id_by_name MAILCHIMP_LIST_NAME

  info = { }
  mailchimp.list_subscribe(list_id, self.email, info, 'html', false, true, false, false))
end

Проблема в том, что это замедляет процесс регистрации ... Для возврата может потребоваться 3 или 4 секунды, и я беспокоюсь, что как только шлюзы откроются на сайте (возможно, позже сегодня), быть смешным из рук.

Есть ли простой способ сделать это быстрее, или мне нужно настроить что-то вроде delayed_job?

1 Ответ

4 голосов
/ 07 февраля 2011

Поскольку вы полагаетесь на время отклика их API, тогда было бы лучше использовать delayed_job для обработки обработки таким образом, чтобы вы могли вернуть фокус обратно пользователю и сайту - это в равной степени относится и к отправке электронных писем и т. Д., Для которых необходимо установить соединение с третьей стороной.

...