I've got an app where a few different classes enqueue requests into Hydra and then the queue is run. Many of these requests could be the same (same url, same options hash) so that in the end I might have 8 requests going to the same server but it's really 2 unique requests requested by 4 different classes. I've verified that Hydra::Request#eql? is true for the similar ones and that memoization is turned on.
What I've noticed is that with a high concurrency, all the requests hit the remote server (e.g. 8). If I turn concurrency down to 1 (like in the docs for memoization) then I only see the unique requests (e.g. 2) at the remote server.
Is this the intended behaviour of memoization? Should I be using caching instead?
Thanks,
Sean