Skip to content

Latest commit

 

History

History
18 lines (11 loc) · 760 Bytes

README.md

File metadata and controls

18 lines (11 loc) · 760 Bytes

Task scheduler implementation in Go and Rust

Feature requirements are:

  1. A client sends a task request via HTTP endpoint, and such requests can be multiple and sent with concurrency.
  2. The server generates a task ID for each request.
  3. The server serialize requests into an apply wait queue with the task ID.
  4. The applier receives the requested task from the queue.
  5. The applier applies the task, and trigger complete event to notify the server.
  6. The server responds to the client request via HTTP.

This is basically how etcd server works.

See rust-lang/wg-async#209 for more discussions.

See #1 for clean-up changes.