Open hamax97 opened 1 year ago
Excon seems like a good option:
After asking ChatGPT:
How about using the HTTP client httpx? It seems to have lots of nice features:
Wiki: https://honeyryderchuck.gitlab.io/httpx/wiki/home.html
Perhaps it'll be better to use a low-level library, perhaps a C library with bindings in Ruby.
How about async-http
to use in conjunction with async
. Remember the C library with bindings to Ruby too.
First experience with async
. In general it was a poor user experience:
warn: Async::Pool::Controller: Async::Pool::Controller Gardener [oid=0x1a79e4] [ec=0x1a79f8] [pid=14008] [2023-07-14 11:13:00 -0500]
| Closing resource while still in use!
| {"resource":"#<Async::HTTP::Protocol::HTTP1::Client:0x00007f91c761b790>","usage":1}
client = Async::HTTP::Internet.new(protocol: Async::HTTP::Protocol::HTTP11)
Benchmark used for memory allocation when downloading: https://gist.github.com/janko/238bbcc78b369ce3438365e5507bc671