Comments (5)
Yes that sounds great.
from asynq.
@hibiken Sure. I can take a look at it. Need to familiarize myself a bit with the internals first and best ways for debugging. Should be fun. Might take a while though as I am pretty swamped at the moment.
from asynq.
Thanks for this feedback!
As described in Life of a Task, when you call
client.Schedule(task, time.Now())
Task will be enqueued immediately to a queue (FIFO queue) and will be dequeued by a worker as soon as it gets to the front of the queue.
My initial thought behind exporting just one method from the Client
type was to keep the API surface area as small as possible.
But, I completely agree that we can provide better API to do what's effectively done with
client.Schedule(task, timestamp)
In fact, I've been thinking about changing this Client API for the last few weeks myself.
Here's my proposal for the Client
API
// Process task immediately
client.Enqueue(task)
// Process at the specified time
client.EnqueueAt(task, timestamp)
// Process after specified duration
client.EnqueueIn(task, duration)
This is similar to python's RQ library's API.
Let me know your thoughts.
from asynq.
@gunnsth Would you like to work on this?
from asynq.
No pressure! Feel free to ping me on gitter channel if you have questions 😄
from asynq.
Related Issues (20)
- [BUG] The related methods of Inspector basically lack the transmission of ctx HOT 2
- [FEATURE REQUEST] customize serializer
- Discussion/Suggestion: Decoupling `x` and `tools` packages.
- [BUG] Unable to schedule a task HOT 1
- Timing issues when running certain tests
- [FEATURE REQUEST] Settable maxArchiveSize HOT 1
- [BUG] Delete archived task fail, when task has been evicted from archived zset. HOT 2
- [FEATURE REQUEST] Unique option for run time of task
- [FEATURE REQUEST] aggregation task optimization
- handler not found for task "ping:worker"
- [FEATURE REQUEST] Custom ticker value for heartbeater duration HOT 4
- Scheduler: How to get the schedule time of the task in the task handler? HOT 1
- [FEATURE REQUEST] Exposing MinIdleConns redis config HOT 3
- [BUG] Description of the bug HOT 1
- [FEATURE REQUEST] can add opt for cron to set second HOT 2
- [FEATURE REQUEST] Process task with ratelimit HOT 2
- [BUG] After manually deleted redis keys, some of the features like metrics, inspector aren't working properly
- [FEATURE REQUEST] Wrap the payload contents in the CLI's Task Info modal
- [FEATURE REQUEST] How can I specific worker concurrency for each queue
- [FEATURE REQUEST] pause server
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from asynq.