diff --git a/apps/rss_feeds/models.py b/apps/rss_feeds/models.py index 4fe4444a5..660cfd7aa 100644 --- a/apps/rss_feeds/models.py +++ b/apps/rss_feeds/models.py @@ -379,7 +379,15 @@ class Feed(models.Model): # for feed_ids in (feeds[pos:pos + queue_size] for pos in xrange(0, len(feeds), queue_size)): for feed_id in feeds: UpdateFeeds.apply_async(args=(feed_id,), queue='update_feeds') - + + @classmethod + def drain_task_feeds(cls, empty=False): + r = redis.Redis(connection_pool=settings.REDIS_FEED_POOL) + if not empty: + tasked_feeds = r.zrange('tasked_feeds', 0, -1) + r.sadd('queued_feeds', *tasked_feeds) + r.zremrangebyrank('tasked_feeds', 0, -1) + def update_all_statistics(self, full=True, force=False): self.count_subscribers() diff --git a/apps/rss_feeds/tasks.py b/apps/rss_feeds/tasks.py index 4051e14f5..38204b71f 100644 --- a/apps/rss_feeds/tasks.py +++ b/apps/rss_feeds/tasks.py @@ -34,7 +34,7 @@ class TaskFeeds(Task): # Regular feeds if tasked_feeds_size < 2000: - feeds = r.srandmember('queued_feeds', 1500) + feeds = r.srandmember('queued_feeds', 2000) Feed.task_feeds(feeds, verbose=True) active_count = len(feeds) else: diff --git a/fabfile.py b/fabfile.py index 5a26436cd..a7da89fc1 100644 --- a/fabfile.py +++ b/fabfile.py @@ -65,6 +65,10 @@ def server(): def app(): server() env.roles = ['app'] + +def work(): + server() + env.roles = ['work'] def dev(): server() @@ -117,10 +121,13 @@ def post_deploy(): @parallel def deploy(fast=False): - deploy_code(copy_assets=True, fast=fast) + deploy_code(copy_assets=False, fast=fast) -def deploy_full(): - deploy_code(copy_assets=True, full=True) +def deploy_web(fast=False): + deploy_code(copy_assets=True, fast=fast, full=False) + +def deploy_full(fast=False): + deploy_code(copy_assets=True, fast=fast, full=True) @parallel def deploy_code(copy_assets=False, full=False, fast=False): diff --git a/templates/maintenance_off.html b/templates/maintenance_off.html index 896bc1ec5..80daff08f 100644 --- a/templates/maintenance_off.html +++ b/templates/maintenance_off.html @@ -7,7 +7,9 @@ - + + +