blob: 9f5a5d8f2ded997b3697addb722ee19136bc7ffa (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
# presque
presque - a redis/tatsumaki based message queue
## INSTALLATION
In order to use presque, you will need:
* [Tatsumaki](http://search.cpan.org/perldoc?Tatsumaki)
* [Redis](http://code.google.com/p/redis/) (at least version 2.0)
* [AnyEvent::Redis](http://search.cpan.org/perldoc?AnyEvent::Redis)
## INTRODUCTION
presque is a persistent job queue that uses Redis for storage and Tatsumaki for the interface between workers and Redis.
presque implement a REST interface for communications, and jobs are JSON data structure.
Workers can be written in any language as long as they implement the REST interface. A complete worker exists for Perl presque::worker. Some examples in other languages can be found in the eg directory.
The functionalities are inspired by [RestMQ](http://github.com/gleicon/restmq) and [resque](http://github.com/defunkt/resque).
## HTTP ROUTES
The following HTTP routes are available:
GET /q/queuename
gets an object out of the queue
POST /q/queuename
insert an object in the queue
PUT /q/queuename
re-insert a job after a worker failed to process the job
DELETE /q/queuename
purge and delete the queue
GET /status/
informations about a queue.
GET /j/queuename
return some basic information about a queue.
GET /control/queuename
return the status of the queue. A queue have two statues: open or
closed. When a queue is closed, no job can be extracted from the
queue.
POST /control/queuename
change the status of the queue.
GET /w/
some statisctics about a worker
POST /w/queuename
register a worker on a queue.
DELETE /w/queue_name
unregister a worker on a queue.
## LIBRARIES
* [Net::Presque](http://github.com/franckcuny/net-presque) - Perl
* [Presque::Client](http://github.com/ngrunwald/presque-client) - Clojure
## AUTHOR
franck cuny <franck@lumberjaph.net>
## SEE ALSO
For a complete description of each routes, refer to presque::WorkerHandler, presque::RestQueueHandler, presque::ControlHandler, presque::JobQueueHandler, presque::StatusHandler.
For a complete worker see presque::worker.
## LICENSE
Copyright 2010 by Linkfluence
<http://linkfluence.net>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
|