From d48d4debd0ae792e8b6d22638f41c11e1399013a Mon Sep 17 00:00:00 2001 From: Ken Hibino Date: Mon, 2 Mar 2020 06:40:53 -0800 Subject: [PATCH] [ci skip] Update readme - Added flow chart for task queue - Reordered sections --- README.md | 71 +++++++++++++++++++------------------ docs/assets/task-queue.png | Bin 0 -> 54737 bytes 2 files changed, 37 insertions(+), 34 deletions(-) create mode 100644 docs/assets/task-queue.png diff --git a/README.md b/README.md index 4511057..6cb72d8 100644 --- a/README.md +++ b/README.md @@ -12,15 +12,7 @@ It is backed by Redis and it is designed to have a low barrier to entry. It shou **Important Note**: Current major version is zero (v0.x.x) to accomodate rapid development and fast iteration while getting early feedback from users. The public API could change without a major version update before v1.0.0 release. -![Gif](/docs/assets/demo.gif) - -## Installation - -To install `asynq` library, run the following command: - -```sh -go get -u github.com/hibiken/asynq -``` +![Task Queue Diagram](/docs/assets/task-queue.png) ## Quickstart @@ -30,7 +22,7 @@ First, make sure you are running a Redis server locally. $ redis-server ``` -To create and schedule tasks, use `Client` and provide a task and when to enqueue the task. +To create and schedule tasks, use `Client` and provide a task and when to enqueue the task. Scheduled tasks will be stored in Redis and will be enqueued at the specified time. ```go func main() { @@ -45,21 +37,21 @@ func main() { t2 := asynq.NewTask("email:reminder", map[string]interface{}{"user_id": 42}) - // Process immediately + // Enqueue immediately err := client.Enqueue(t1) - // Process 24 hrs later + // Enqueue 24 hrs later err = client.EnqueueIn(24*time.Hour, t2) - // Process at specified time. + // Enqueue at specified time. target := time.Date(2020, time.March, 6, 10, 0, 0, 0, time.UTC) err = client.EnqueueAt(target, t2) - // Pass options to specify processing behavior for a given task. + // Pass vararg options to specify processing behavior for the given task. // - // MaxRetry specifies the maximum number of times this task will be retried (Default is 25). - // Queue specifies which queue to enqueue this task to (Default is "default"). - // Timeout specifies the the timeout for the task's context (Default is no timeout). + // MaxRetry specifies the max number of retry if the task fails (Default is 25). + // Queue specifies which queue to enqueue this task to (Default is "default" queue). + // Timeout specifies the the task timeout (Default is no timeout). err = client.Enqueue(t1, asynq.MaxRetry(10), asynq.Queue("critical"), asynq.Timeout(time.Minute)) } ``` @@ -69,11 +61,9 @@ To start the background workers, use `Background` and provide your `Handler` to `Handler` is an interface with one method `ProcessTask` with the following signature. ```go -// ProcessTask should return nil if the processing of a task -// is successful. +// ProcessTask should return nil if the processing of a task is successful. // -// If ProcessTask return a non-nil error or panics, the task -// will be retried after delay. +// If ProcessTask return a non-nil error or panics, the task will be retried after delay. type Handler interface { ProcessTask(context.Context, *asynq.Task) error } @@ -99,6 +89,7 @@ func main() { // See the godoc for other configuration options }) + // mux maps a type to a handler mux := asynq.NewServeMux() mux.HandleFunc("email:signup", signupEmailHandler) mux.HandleFunc("email:reminder", reminderEmailHandler) @@ -121,7 +112,31 @@ func signupEmailHandler(ctx context.Context, t *asynq.Task) error { For a more detailed walk-through of the library, see our [Getting Started Guide](https://github.com/hibiken/asynq/wiki/Getting-Started). -To Learn more about `asynq` features and APIs, see our [Wiki pages](https://github.com/hibiken/asynq/wiki) and [godoc](https://godoc.org/github.com/hibiken/asynq). +To Learn more about `asynq` features and APIs, see our [Wiki](https://github.com/hibiken/asynq/wiki) and [godoc](https://godoc.org/github.com/hibiken/asynq). + +## Command Line Tool + +Asynq ships with a command line tool to inspect the state of queues and tasks. + +Here's an example of running the `stats` command. + +![Gif](/docs/assets/demo.gif) + +For details on how to use the tool, refer to the tool's [README](/tools/asynqmon/README.md). + +## Installation + +To install `asynq` library, run the following command: + +```sh +go get -u github.com/hibiken/asynq +``` + +To install the CLI tool, run the following command: + +```sh +go get -u github.com/hibiken/asynq/tools/asynqmon +``` ## Requirements @@ -130,18 +145,6 @@ To Learn more about `asynq` features and APIs, see our [Wiki pages](https://gith | [Redis](https://redis.io/) | v2.8+ | | [Go](https://golang.org/) | v1.12+ | -## Command Line Tool - -Asynq ships with a command line tool to inspect the state of queues and tasks. - -To install, run the following command: - -```sh -go get -u github.com/hibiken/asynq/tools/asynqmon -``` - -For details on how to use the tool, refer to the tool's [README](/tools/asynqmon/README.md). - ## Contributing We are open to, and grateful for, any contributions (Github issues/pull-requests, feedback on Gitter channel, etc) made by the community. diff --git a/docs/assets/task-queue.png b/docs/assets/task-queue.png new file mode 100644 index 0000000000000000000000000000000000000000..166ee45e79fcab52a48171cbe23eea675d08a9b6 GIT binary patch literal 54737 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