either way, we have to get the subscriptions, there is now way to avoid this:

subscriptions = Subscription.where(:subscriber_id.in => user_ids)

because subscriptions are time-indepdendent by design (we can change this).  once we have subscriptions, it's expected that this service is run at least once daily. 

per our discussions, i will leave this and performance tune as needed, but at least this is atomic so we can do so independently.