Q4M operation wrapper
Project description
This module is simple Q4M operation wrapper developed by pixiv Inc. for asynchronous upload system
Simple example of usage is followings
>>> from python_q4m.q4m import * >>> class QueueTable(Q4M): >>> def __init__(self, con): >>> super(self.__class__, self).__init__(con) >>> self.table = 'queue_table' >>> self.columns = ['id', >>> 'msg', >>> ] >>> try: >>> con = MySQLdb.connect(host='localhost', >>> db=dbname, >>> user=username, >>> passwd=password, >>> ) >>> q = QueueTable(con) >>> q.enqueue([1, 'msg']) >>> while q.wait() == 0: >>> time.sleep(1); >>> res = q.dequeue() >>> print res['id'] >>> print res['msg'] >>> q.end() >>> con.close() >>> except MySQLdb.Error, e: >>> print 'Error %d: %s' % (e.args[0], e.args[1]) >>> q.abort() >>> con.close()
And it is necessary to create following table for above example
CREATE TABLE queue_table ( id int(11) NOT NULL, msg text NOT NULL ) ENGINE=QUEUE;
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python_q4m-0.0.4.tar.gz
(2.2 kB
view hashes)
Built Distribution
python_q4m-0.0.4-py2.6.egg
(4.9 kB
view hashes)