2011-02-07 10 views
1

現在、私はMailChimpまで新しいユーザーを購読するRails 3アプリを持っています。これらの3つのアクションのそれぞれは、この上でいくつかのバリエーションが、その後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のようなものを設定する必要はありますか?

答えて

4

あなたはAPIの応答時間に頼っているので、delayed_jobを使用して、ユーザーとサイトにフォーカスを戻すことができるように処理することをお勧めします。第三者との接続を確立する必要があります。