zoukankan      html  css  js  c++  java
  • RQ: Simple job queues for Python

    RQ: Simple job queues for Python

    RQ (Redis Queue) is a simple Python library for queueing jobs and processing them in the background with workers. It is backed by Redis and it is designed to have a low barrier to entry. It should be integrated in your web stack easily.

    RQ requires Redis >= 2.2.0.

    Getting started

    First, run a Redis server, of course. To put jobs on queues, you don't have to do anything special, just define your typically lengthy or blocking function:

    import requests
    
    def count_words_at_url(url):
        resp = requests.get(url)
        return len(resp.text.split())
    

    Then, create a RQ queue:

    from redis import Redis
    from rq import Queue
    
    q = Queue(connection=Redis())
    

    And enqueue the function call:

    from my_module import count_words_at_url
    result = q.enqueue(
                 count_words_at_url, 'http://nvie.com')
    

    For a more complete example, refer to the docs. But this is the essence.

    The worker

    To start executing enqueued function calls in the background, start a worker from your project's directory:

    $ rqworker
    *** Listening for work on default
    Got count_words_at_url('http://nvie.com') from default
    Job result = 818
    *** Listening for work on default
    

    That's about it.

    Installation

    Simply use the following command to install the latest released version:

    pip install rq
    

    If you want the cutting edge version (that may well be broken), use this:

    pip install -e git+git@github.com:nvie/rq.git@master#egg=rq
    

    Project history

    This project has been inspired by the good parts of Celery, Resque and this snippet, and has been created as a lightweight alternative to existing queueing frameworks, with a low barrier to entry.

  • 相关阅读:
    【CodeForces 788B】奇妙的一笔画问题
    数论day2——离散对数、元根
    学习阶段总结(1)
    Flask特殊装饰器
    Flask蓝图
    Flask对象配置
    Flask实例化配置
    Flask路由
    Flask Session
    Flask jinja2
  • 原文地址:https://www.cnblogs.com/lexus/p/2839407.html
Copyright © 2011-2022 走看看