Hi! Welcome and thanks for considering Gearman. See in-line replies.
Quoting Jitendra Singh (2018-06-07 16:41:12)
Gearman is good for spreading a lot of tasks out to a lot of worker
processes. So if you want to read the JSON, transform to XML, do something
else expensive, and send it along somewhere else, that's a good use
case for a gearman worker. You can then spin up as many workers as you
need to parallelize the job and get it done faster. So you'd probably
have one main "client" that would pull the 200,000 record ID's, and
then submit them all as individual gearman jobs. The workers would read
the job ID out of gearman, and then hit your REST API to get details,
and do their transformation. If you want the results to go back to one
place, you can have them sent back to the original client as results,
or you can do these as "background" jobs and just have the workers write
the results wherever they go.
That said, 200,000 records is almost nothing. Have you tried just
walking through every record and applying transformations to each one? Is
that too slow? If not, just do that. If, however, you want to use more
CPU/memory/disk/network to get it done faster, then yes, gearman may be
a good choice.