A client submits work in the form of a task, gearman_task_st to a Gearman server. Client are represented by gearman_client_st.
Responds to tasks that originate from a client. A Gearman server transports the requests.
Client requests, they are represented by gearman_task_st. Each task is assigned a job handle, gearman_job_handle_t, by the server.
A job represents a task once it is sent to worker. It is represented as gearman_job_st.
A “subprogram” that takes a set of parameters and returns a result (or just just a status). Functions are defined for workers.
A function that takes a piece of data from mapper and returns a value that will be sent to an aggregator function. Any function can be a reducer.
Mapper functions take incoming data and “map” it out to hosts. The “map” typically is a function that splits up the incoming work. The function that receives the mapped work is the reducer. Work is collected from the reducer and given to an aggregator function.
A function which takes data and compiles it into a single return value. Aggregator functions are defined by gearman_aggregator_fn.
Context are user supplied variables/structures that can be attached to gearman_worker_st, gearman_client_st, gearman_task_st, gearman_job_st, and similar objects that are passed as opaque objects that the library will ignore (i.e. they are there for developers to use to store state).