Start beanstalkd, listening on port 11300

$ beanstalkd

Start beanstalkd listening on a custom port and address

$ beanstalkd -l [ip_address] -p [port_number]

Persist work queues by saving them to disk

$ beanstalkd -b [path/to/persistence_directory]

Sync to the persistence directory every 500 milliseconds

$ beanstalkd -b [path/to/persistence_directory] -f [500]


beanstalkd [options]


Beanstalkd is a simple work-queue service. Its interface is generic, though it was originally designed for reducing the latency of page views in high-volume web applications by running time-consuming tasks asynchronously.

When started, beanstalkd opens a socket (or uses a file descriptor provided by the init(1) system, see #ENVIRONMENT) and listens for incoming connections. For each connection, it reads a sequence of commands to create, reserve, delete, and otherwise manipulate "jobs", units of work to be done. See file doc/protocol.txt in the beanstalkd distribution for a thorough description of the meaning and format of the beanstalkd protocol.


-b path

Use a binlog to keep jobs on persistent storage in directory path. Upon startup, beanstalkd will recover any binlog that is present in path, then, during normal operation, append new jobs and changes in state to the binlog.

-f ms

Call fsync(2) at most once every ms milliseconds. Larger values for ms reduce disk activity and improve speed at the cost of safety. A power failure could result in the loss of up to ms milliseconds of history.

A ms value of 0 will cause beanstalkd to call fsync every time it writes to the binlog.

The default behavior is to sync every 50 ms.

(This option has no effect without -b.)


Never call fsync(2). Equivalent to -f with an infinite ms value.

(This option has no effect without -b.)


Show a brief help message and exit.

-l addr

Listen on address addr (default is

When addr starts with "unix:", the unprefixed value of it will be used as the local filesystem path to create a UNIX socket instead of a TCP socket. In this case the value of -p will be ignored.

(Option -l has no effect if sd-daemon(5) socket activation is being used. See also #ENVIRONMENT.)

-p port

Listen on TCP port port (default is 11300).

(Option -p has no effect if sd-daemon(5) socket activation is being used. See also #ENVIRONMENT.)

-s bytes

The size in bytes of each binlog file.

(This option has no effect without -b.)

-u user

Become the user user and its primary group.


Increase verbosity. May be used more than once to produce more verbose output. The output format is subject to change.


Print the version string and exit.

-z bytes

The maximum size in bytes of a job.


This flag has no effect. It is kept for historical compatibility only.


This flag has no effect. It is kept for historical compatibility only.



These variables can be set by init(1). See sd_listen_fds(3) for details.


sd-daemon(3), sd_listen_fds(3) Files and doc/protocol.txt in the beanstalkd distribution.


Beanstalkd is written by Keith Rarick and maintained by the community at

Copied to clipboard