nn_reqrep(7)
============

NAME
----
nn_reqrep - request/reply scalability protocol


SYNOPSIS
--------
*#include <nanomsg/nn.h>*

*#include <nanomsg/reqrep.h>*


DESCRIPTION
-----------
This protocol is used to distribute the workload among multiple stateless
workers.

Socket Types
~~~~~~~~~~~~

NN_REQ::
    Used to implement the client application that sends requests and
    receives replies.
NN_REP::
    Used to implement the stateless worker that receives requests and sends
    replies.

Socket Options
~~~~~~~~~~~~~~

NN_REQ_RESEND_IVL::
    This option is defined on the full REQ socket. If reply is not received
    in specified amount of milliseconds, the request will be automatically
    resent. The type of this option is int. Default value is 60000 (1 minute).


SEE ALSO
--------
linknanomsg:nn_bus[7]
linknanomsg:nn_pubsub[7]
linknanomsg:nn_pipeline[7]
linknanomsg:nn_survey[7]
linknanomsg:nn_pair[7]
linknanomsg:nanomsg[7]


AUTHORS
-------
Martin Sustrik <sustrik@250bpm.com>

