Slide 30
Slide 30 text
@dgouldin
Task Distribution
PAGINATION
class LimitOffsetImportPage(LimitOffsetBasedTask):
def run(self, user_id, page_num, limit, concurrent):
# ...
offset = page_num * limit
page = self.call(user, 'friends',
kwargs={'offset': offset, 'limit': limit})
if page.friends:
# this page is not empty, launch another!
next_page_num = page_num + concurrent
LimitOffsetImportPage.delay(user_id,
next_page_num, limit, concurrent)
# ...
limit/offset supported & set size unknown