asynq
asynq copied to clipboard
[FEATURE REQUEST] Client in other languages
Is your feature request related to a problem? Please describe. We could offer client libraries in other languages. Web applications written in another language can use the client library to enqueue tasks.
Describe the solution you'd like Add a client library for
- [ ] Python
- [ ] Ruby
- [ ] Node.js
- [ ] Java
- [ ] PHP
- [ ] Rust
- [ ] Elixir
Additional context These client libraries should be its own repo.
Rust would also be great
@ianldgs Definitely, added Rust to the list 👍
Rust 💯
Java
php
I am working on a client library for python https://github.com/newlife/asynq-py 。
For now ,It works fine for me ,I just need send task ran immediately, which is complete.
Next , I will finish next part which task to be processed in the future, shown in the example .
If there is any feature I missed, let me know ,I will add if I can
Wish this client can make some help
Is there anyone working in a rust client? this is something that I would like to work on
@ianprogrammer Please let us know if you end up creating a client library in Rust. We'll make sure to list the client libraries in other languages in the README.
Also, please feel free to ping me here or open a discussion if you have questions on the current implementation in Go client 👍
the right way to this is maybe with API server, clients in other languages is simple http client...
@a5r0n thanks for the comment! It's a good point, we could add a HTTP/gRPC service that accepts requests and enqueues the tasks. That service can also be responsible for pushing the task to Handler services via HTTP/gRPC also :)
I think we can explore this as an extension to the library 👍 (i.e. implementation should live in either separate repo, or under /x
directory)
i am planning to write a protoc-plugin so i can reuse grpc client interface to enqueue tasks.
please let me know if u have similar idea. may be i can do some contribution and avoid doing things repeatedly.
the right way to this is maybe with API server, clients in other languages is simple http client...
So, should other lang clients know the host address and port? and... need some gateways for discovery and load balancing? @a5r0n @hibiken
client for TBD did you mean hosting process for asynq? could you please clarify
i saw some proto files, but without service definition looks asynq gRPC server will be good enough - grpc supports lot of languages
some weeks ago i finished similar server and looking for new open source project