Metadata-Version: 2.1
Name: deepfos-celery
Version: 1.0.3
Summary: Distributed Task Queue.
Home-page: http://celeryproject.org
Author: DeepFOS
Author-email: python@deepfinance.com
License: BSD
Project-URL: Documentation, http://docs.celeryproject.org/en/latest/index.html
Project-URL: Code, https://gitee.com/python-development-team/deepfos-celery/
Project-URL: Tracker, https://github.com/celery/celery/issues
Project-URL: Funding, https://opencollective.com/celery
Keywords: task job queue distributed messaging actor
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: BSD License
Classifier: Topic :: System :: Distributed Computing
Classifier: Topic :: Software Development :: Object Brokering
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6,
Provides-Extra: auth
Provides-Extra: cassandra
Provides-Extra: pyro
Provides-Extra: gevent
Provides-Extra: mongodb
Provides-Extra: couchbase
Provides-Extra: cosmosdbsql
Provides-Extra: pytest
Provides-Extra: sqlalchemy
Provides-Extra: yaml
Provides-Extra: pymemcache
Provides-Extra: consul
Provides-Extra: msgpack
Provides-Extra: brotli
Provides-Extra: django
Provides-Extra: zookeeper
Provides-Extra: lzma
Provides-Extra: sqs
Provides-Extra: redis
Provides-Extra: s3
Provides-Extra: couchdb
Provides-Extra: azureblockblob
Provides-Extra: dynamodb
Provides-Extra: arangodb
Provides-Extra: slmq
Provides-Extra: tblib
Provides-Extra: librabbitmq
Provides-Extra: solar
Provides-Extra: memcache
Provides-Extra: zstd
Provides-Extra: eventlet
Provides-Extra: elasticsearch
License-File: LICENSE

.. image:: http://docs.celeryproject.org/en/latest/_images/celery-banner-small.png

|license| |wheel| |pyversion|

:Version: 1.0.0
:Web: http://celeryproject.org/
:Download: https://pypi.org/project/celery/
:Source: https://gitee.com/python-development-team/deepfos-celery/
:Keywords: task, queue, job, async, rabbitmq, amqp, redis,
  python, distributed, actors

What is this?
=============

本项目基于 ``celery-5.0.5`` 开发，主要功能是添加 ``asyncio`` 支持，
以更好地和 ``FastAPI`` 等异步web框架配合使用。

项目是 ``celery`` 的超集，但并非所有功能都支持 ``asyncio`` ，
并且目前仅完成了 ``redis`` 作为 ``broker`` 和 ``backend`` 的支持。


Get Started
===========

创建任务和官方 ``celery`` 一样:

.. code-block:: python

    from celery import Celery

    app = Celery('hello', broker='redis://:@localhost/')

    @app.task(aio_variant=True)
    def hello():
        return 'hello world'


但增加了 ``aio_variant`` 这一参数，相较于普通的任务发送和获取结果的方式：

.. code-block:: python

    task = hello.apply_async()
    result = task.get()


可以使用:

.. code-block:: python

    task = await hello.aio.apply_async()
    result = await task.get()


**注意**

    这不只是一个简单的语法糖，而是确实使用 ``aioredis`` 替换了原有 ``redis-py`` 的同步网络请求。


.. _license:

License
=======

This software is licensed under the `New BSD License`. See the ``LICENSE``
file in the top distribution directory for the full license text.

.. # vim: syntax=rst expandtab tabstop=4 shiftwidth=4 shiftround

.. |license| image:: https://img.shields.io/pypi/l/celery.svg
    :alt: BSD License
    :target: https://opensource.org/licenses/BSD-3-Clause

.. |wheel| image:: https://img.shields.io/pypi/wheel/celery.svg
    :alt: Celery can be installed via wheel
    :target: https://pypi.org/project/celery/

.. |pyversion| image:: https://img.shields.io/pypi/pyversions/celery.svg
    :alt: Supported Python versions.
    :target: https://pypi.org/project/celery/

