kuhnuri / kuhnuri-queue Goto Github PK
View Code? Open in Web Editor NEWKuhnuri queue specification and reference implementation
License: Apache License 2.0
Kuhnuri queue specification and reference implementation
License: Apache License 2.0
Add parameters to filter the output for the jobs end-point. Filters should include:
Support uploading source ZIP and downloading result ZIP directly from queue.
Instead of passing the log to the queue on submit, the worker log should persisted just like output resource. Logs can be very large at debug level, thus they cannot be returned as part of the submission JSON.
At task level, this could be
{
"output": "s3://bucket/output.zip",
"log": "s3://bucket/output.log",
}
Currently job can only contain a single transtype that should be used to process the job. This should be extend to be a sequence of transtypes that need to be ryn in order. For example in pseudo code
{
transtype: [
{ name: "graphics" },
{ name: "pdf2" },
]
}
Queue should first run graphics
transtype and then pdf2
. When both transtypes have completed, the job is considered done.
This enables use cases such as
By separating different type of processing of separate workers, the workers can be run on different machines per CPU or IO usage. Similarly a part of processing that requires licensed software or a given platform can be run in a single common worker while doing generic DITA processing in multiple workers.
Add support for password on worker registration. Hash passwords with jBcrypt
Add timestamps for all state transitions, i.e. for starting processing and finishing processing.
Workers should be able to store key-value pairs of data when job is submitted back.
A job is given to a Worker. When timeout x has occurred, ping Worker to see if it's still alive.
If Worker doesn't respond, change job state back to queue
.
Expose all job information in REST API.
Add pagination for the jobs end-point via page
parameter and the Link header.
Add priority field for queue items. Field could be signed byte, with convention to use zero for default priority.
In memory-backed queue persist done and errored jobs to JSON archive file and keep only queue and process jobs in memory.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.