SYNOPSIS
#include <nng/protocol/reqrep0/rep.h>
int nng_rep0_open(nng_socket *s);
DESCRIPTION
The rep protocol is one half of a request/reply pattern. In this pattern, a requester sends a message to one replier, who is expected to reply. The request is resent if no reply arrives, until a reply is received or the request times out.
This protocol is useful in setting up RPC-like services. It is also “reliable”, in that a the requester will keep retrying until a reply is received. |
The rep protocol is the replier side, and the req protocol is the requester side.
Socket Operations
The nng_rep0_open()
call creates a replier socket.
This socket may be used to receive messages (requests), and then to send
replies.
Generally a reply can only be sent after receiving a request.
(Attempts to receive a message will result in NNG_ESTATE
if there
is no outstanding request.)
Attempts to send on a socket with no outstanding requests will result
in NNG_ESTATE
.
Raw mode sockets (set with NNG_OPT_RAW
)
ignore all these restrictions.
Protocol Versions
Only version 0 of this protocol is supported. (At the time of writing, no other versions of this protocol have been defined.)
Protocol Options
The rep protocol has no protocol-specific options.
Protocol Headers
The rep protocol uses a backtrace in the header. This is more fully documented in the req manual.