This document provides information about Xima and his 5 years of experience in the Python community. It then summarizes some of Xima's work, including Django and Javascript projects on GitHub. The remainder of the document discusses Celery, a Python asynchronous task queue/job queue, including examples of using Celery tasks, chains, groups, signatures, and custom task classes.
34. GET /eventos/12/ POST /eventos/
{
"nome": "Python Sudeste"
}
DELETE /eventos/12/PUT /eventos/12/
{
"nome": "Python Sudeste"
}
35. GET /eventos/12/ POST /eventos/
{
"nome": "Python Sudeste"
}
DELETE /eventos/12/PUT /eventos/12/
{
"nome": "Python Sudeste"
}
36.
37. @app.task
def atualiza_dados():
user.status = 'atualizado'
user.save()
r = requisição_pro_facebook()
user.name = r.name
user.save()
@app.task
def newsletter_mensal():
r = requisição_pro_facebook()
if r.status != 200:
return
user.name = r.name
user.status = 'atualizado'
user.save()
vs.
38. @app.task
def newsletter_mensal():
usuarios = todos_os_usuarios()
for u in usuarios:
send(email, 'newsletter')
@app.task
def enviar_newsletter(email):
send(email, 'newsletter')
@app.task
def newsletter_mensal():
usuarios = todos_os_usuarios()
for u in usuarios:
enviar_newsletter.delay(u.email)
vs.
39. from tapioca.exceptions import TapiocaException
from tapioca_facebook import Facebook
@app.task(bind=True, retry_limit=4
default_retry_delay=2)
def likes_do_facebook(self):
api = Facebook(access_token=ACCESS_TOKEN)
try:
api.user_likes(id='me').get()
except TapiocaException as e:
self.retry(exc=e)