about summary refs log tree commit diff
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2010-05-15 17:45:15 +0200
committerfranck cuny <franck@lumberjaph.net>2010-05-15 17:45:15 +0200
commit5dbc56722658a513a65b690d906ec736b21be46e (patch)
tree979b0d65548b4a565426aaa52afd7a8072668255
parentspec for worker handler (diff)
downloadpresque-5dbc56722658a513a65b690d906ec736b21be46e.tar.gz
regenerate readme
-rw-r--r--README114
-rw-r--r--lib/presque.pm2
2 files changed, 26 insertions, 90 deletions
diff --git a/README b/README
index 0db2272..0c29bb0 100644
--- a/README
+++ b/README
@@ -1,14 +1,23 @@
 NAME
-    presque - a redis based message queue
+    presque - a redis/tatsumaki based message queue
 
 SYNOPSIS
 DESCRIPTION
-    presque is a message queue system based on Tatsumaki and Redis.
+    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 the name by resque
+    <http://github.com/gleicon/restmq> and resque
     <http://github.com/defunkt/resque>.
 
+  HTTP ROUTES
     The following HTTP routes are available:
 
     GET /q/queuename
@@ -23,9 +32,8 @@ DESCRIPTION
     DELETE /q/queuename
         purge and delete the queue
 
-    GET /status/(queuename)
-        If no queuename is given, return a list of queues. If queuename is
-        given, return the size of the queue and the current policy.
+    GET /status/
+        informations about a queue.
 
     GET /j/queuename
         return some basic information about a queue.
@@ -38,98 +46,26 @@ DESCRIPTION
     POST /control/queuename
         change the status of the queue.
 
-    GET /w/(?[worker_id|queue_name])
-        If no argument is given, return some stats about workers. If a
-        worker_id is given, return stats about the specific worker. If a
-        queue name is given return stats about the workers on this queue.
+    GET /w/
+        some statisctics about a worker
 
-    POST /w/queue_name?worker_id
+    POST /w/queuename
         register a worker on a queue.
 
-    DELETE /w/queue_name?worker_id
+    DELETE /w/queue_name
         unregister a worker on a queue.
 
-USAGE
-  WORKERS INTERFACE
-    It's possible for a worker to register itself against presque. This is
-    not required. The main purpose of registering workers is to collect
-    informations about your workers : what are they doing right now, how
-    many jobs have they failed, how many jobs have they processed, ...
-
-   REGISTER A WORKER
-    To register a worker, a POST request must be made. The content of the
-    POST must be a JSON structure that contains the key worker_id.
-
-        curl -H 'Content-Type: appplication/json' http://localhost:5000/w/foo -d '{"worker_id":"myworker_1"}
-
-    The HTTP response is 201, and no content is returned.
-
-   STATISTICS
-    When a worker is registered, statistics about this worker are collected.
-
-        curl "http://localhost:5000/w/?worker_id=myworker_1" | json_xs -f json -t json-pretty
-
-        {
-            "worker_id" : "myworker_1",
-            "started_at" : 1273923534,
-            "processed" : "0",
-            "failed" : "0"
-        }
-
-   UNREGISTER A WORKER
-    When a worker has finished to work, it should unregister itself:
-
-        curl -X DELETE "http://localhost:5000/w/foo?worker_id=myworker_1"
-
-    The response HTTP code is 204, and no content is returned.
-
-  JOB INTERFACE
-   INSERT A JOB
-    The Content-Type of the request must be set to application/json. The
-    body of the request must be a valid JSON object.
-
-        curl -H 'Content-Type: application/json' -X POST "http://localhost:5002/q/foo" -d '{"key":"value"}'
-
-    It's possible to create delayed jobs (eg: job that will not be run
-    before a defined time in the futur).
-
-        curl -H 'Content-Type: application/json' -X POST "http://localhost:5002/q/foo?delayed="$(expr `date +%s` + 500) -d '{"key":"value"}'
-
-    the delayed value should be a date in epoch
-
-   FETCH A JOB
-    Return a JSON object
-
-       curl http://localhost:5002/q/foo
-
-   PURGE AND DELETE A QUEUE
-       curl -X DELETE http://localhost:5002/q/foo
-
-  CHANGE THE POLICY OF A QUEUE
-    By default, when a queue is created, the status is set to 'open'. When a
-    queue is set to 'stop', no job will be fetched from the queue.
-
-    To stop a queue:
-
-        curl -X POST -H 'Content-Type: application/json' -d '{"status":"stop"}' http://localhost:5000/control/foo
-
-        {"response":"updated","queue":"foo"}
-
-    To re-open a queue:
-
-        curl -X POST -H 'Content-Type: application/json' -d '{"status":"start"}' http://localhost:5000/control/foo
-
-    To fetch the status of a queue:
-
-        curl http://localhost:5000/control/foo
-
-        {"status":"0","queue":"foo"}
-
-  GET SOME STATUS ABOUT A QUEUE
 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
 
diff --git a/lib/presque.pm b/lib/presque.pm
index 309898f..a6dffd4 100644
--- a/lib/presque.pm
+++ b/lib/presque.pm
@@ -120,7 +120,7 @@ franck cuny E<lt>franck@lumberjaph.netE<gt>
 
 =head1 SEE ALSO
 
-For a complete description of each routes, refer to L<presque::WorkerHandler>, L<presque::RestQueueHandler>, L<presque::ControlHandler>, L<JobQueueHandler>, L<presque::StatusHandler>.
+For a complete description of each routes, refer to L<presque::WorkerHandler>, L<presque::RestQueueHandler>, L<presque::ControlHandler>, L<presque::JobQueueHandler>, L<presque::StatusHandler>.
 
 For a complete worker see L<presque::worker>.