Gearman Developer Documentation

Server Interface

Data Structures

struct  gearman_server_st

Modules

 Server Client Handling
 Server Connection Handling
 Server Function Handling
 Server Job Handling
 Private Server Functions
 Server Worker Handling

Enumerations

enum  gearman_server_options_t { GEARMAN_SERVER_ALLOCATED = (1 << 0), GEARMAN_SERVER_PROC_THREAD = (1 << 1), GEARMAN_SERVER_QUEUE_REPLAY = (1 << 2) }

Functions

gearman_server_stgearman_server_create (gearman_server_st *server)
void gearman_server_free (gearman_server_st *server)
void gearman_server_set_job_retries (gearman_server_st *server, uint8_t job_retries)
void gearman_server_set_log_fn (gearman_server_st *server, gearman_log_fn *function, const void *context, gearman_verbose_t verbose)
gearman_return_t gearman_server_run_command (gearman_server_con_st *server_con, gearman_packet_st *packet)
gearman_return_t gearman_server_shutdown_graceful (gearman_server_st *server)
gearman_return_t gearman_server_queue_replay (gearman_server_st *server)
void * gearman_server_queue_context (const gearman_server_st *server)
void gearman_server_set_queue_context (gearman_server_st *server, const void *context)
void gearman_server_set_queue_add_fn (gearman_server_st *server, gearman_queue_add_fn *function)
void gearman_server_set_queue_flush_fn (gearman_server_st *server, gearman_queue_flush_fn *function)
void gearman_server_set_queue_done_fn (gearman_server_st *server, gearman_queue_done_fn *function)
void gearman_server_set_queue_replay_fn (gearman_server_st *server, gearman_queue_replay_fn *function)

Detailed Description

This is the interface gearman servers should use.


Enumeration Type Documentation

Options for gearman_server_st.

Enumerator:
GEARMAN_SERVER_ALLOCATED 
GEARMAN_SERVER_PROC_THREAD 
GEARMAN_SERVER_QUEUE_REPLAY 

Definition at line 64 of file constants.h.


Function Documentation

gearman_server_st* gearman_server_create ( gearman_server_st server  ) 

Initialize a server structure. This cannot fail if the caller supplies a server structure.

Parameters:
server Caller allocated server structure, or NULL to allocate one.
Returns:
Pointer to an allocated server structure if server parameter was NULL, or the server parameter pointer if it was not NULL.

Definition at line 67 of file server.c.

void gearman_server_free ( gearman_server_st server  ) 

Free resources used by a server structure.

Parameters:
server Server structure previously initialized with gearman_server_create.

Definition at line 133 of file server.c.

void gearman_server_set_job_retries ( gearman_server_st server,
uint8_t  job_retries 
)

Set maximum job retry count.

Parameters:
server Server structure previously initialized with gearman_server_create.
job_retries Number of job attempts.

Definition at line 188 of file server.c.

void gearman_server_set_log_fn ( gearman_server_st server,
gearman_log_fn function,
const void *  context,
gearman_verbose_t  verbose 
)

Set logging callback for server instance.

Parameters:
server Server structure previously initialized with gearman_server_create.
function Function to call when there is a logging message.
context Argument to pass into the log callback function.
verbose Verbosity level.

Definition at line 194 of file server.c.

gearman_return_t gearman_server_run_command ( gearman_server_con_st server_con,
gearman_packet_st packet 
)

Process commands for a connection.

Parameters:
server_con Server connection that has a packet to process.
packet The packet that needs processing.
Returns:
Standard gearman return value.

Definition at line 203 of file server.c.

gearman_return_t gearman_server_shutdown_graceful ( gearman_server_st server  ) 

Tell server that it should enter a graceful shutdown state.

Parameters:
server Server structure previously initialized with gearman_server_create.
Returns:
Standard gearman return value. This will return GEARMAN_SHUTDOWN if the server is ready to shutdown now.

Definition at line 632 of file server.c.

gearman_return_t gearman_server_queue_replay ( gearman_server_st server  ) 

Replay the persistent queue to load all unfinshed jobs into the server. This should only be run at startup.

Parameters:
server Server structure previously initialized with gearman_server_create.
Returns:
Standard gearman return value. This will return GEARMAN_SHUTDOWN if the server is ready to shutdown now.

Definition at line 642 of file server.c.

void* gearman_server_queue_context ( const gearman_server_st server  ) 

Get persistent queue context.

Definition at line 659 of file server.c.

void gearman_server_set_queue_context ( gearman_server_st server,
const void *  context 
)

Set persistent queue context that will be passed back to all queue callback functions.

Definition at line 664 of file server.c.

void gearman_server_set_queue_add_fn ( gearman_server_st server,
gearman_queue_add_fn function 
)

Set function to call when jobs need to be stored in the persistent queue.

Definition at line 670 of file server.c.

void gearman_server_set_queue_flush_fn ( gearman_server_st server,
gearman_queue_flush_fn function 
)

Set function to call when the persistent queue should be flushed to disk.

Definition at line 676 of file server.c.

void gearman_server_set_queue_done_fn ( gearman_server_st server,
gearman_queue_done_fn function 
)

Set function to call when a job should be removed from the persistent queue.

Definition at line 682 of file server.c.

void gearman_server_set_queue_replay_fn ( gearman_server_st server,
gearman_queue_replay_fn function 
)

Set function to call when jobs in the persistent queue should be replayed after a restart.

Definition at line 688 of file server.c.


Generated on Tue Oct 13 20:19:22 2009 by  doxygen 1.6.1