Hi fellow Django users!

We are pleased to introduce objpool [1] to the Django community.

objpool provides a generic library for pooling resources as objects.
It's being developed by GRNET [2], and used in Synnefo [3]. Synnefo is
an open source IaaS cloud platform, compliant with the OpenStack APIs,
which uses Django for the implementation of its (REST) APIs.

objpool essentially provides a generic abstract pooling class, which one
can subclass to properly implement pooling for the resources they need.
We have included the implementation of the HTTP connection pool, which
we use in Synnefo, in the Git repository [5], which could serve as a
guideline for implementing your own pools of resources. Except for HTTP
connections, objpool is used in Synnefo to pool DB connections [6] and
connections to our own storage backends [7].

We have published a detailed blog post [4], explaining the reasons that
led to its development, as well as presenting technical details,
pitfalls and lessons we learnt on the way.

We should also note, that Synnefo recommends and uses as its default
deployment configuration, Gunicorn with async Gevent workers. As a
result, we've taken special care to make both the abstract pooling class
and the subclasses we've implemented safe to be used within Greenlets.

Give it a try, and tell us what you think. Feedback is always welcome!

You can clone the git repo [1], or use pip to fetch if from PyPi [8]. We
also provide Debian packages in our apt repository:

    deb http://apt.dev.grnet.gr stable/
    deb-src http://apt.dev.grnet.gr stable/

    # apt-get install python-objpool

Thanks,
Stratos

[1] https://github.com/grnet/objpool
[2] http://www.grnet.gr/en
[3] http://www.synnefo.org
[4]
http://synnefo-software.blogspot.gr/2013/04/objpool-introducing-general-pooling-in.html
[5]
https://github.com/grnet/objpool/blob/dca8c0f129cbd9754c5299d89864828ce93cae56/objpool/http.py#L61
[6]
https://code.grnet.gr/projects/synnefo/repository/revisions/1a736ca860cde340940a5ee4babfec9d7b242006/entry/snf-common/synnefo/lib/db/pooled_psycopg2/__init__.py#L168
[7]
https://code.grnet.gr/projects/synnefo/repository/revisions/release-0.13/entry/snf-pithos-backend/pithos/backends/util.py
[8] https://pypi.python.org/pypi/objpool/


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to