diff options
author | Micah Anderson <micah@riseup.net> | 2014-11-11 13:28:03 -0500 |
---|---|---|
committer | Micah Anderson <micah@riseup.net> | 2014-11-11 13:28:03 -0500 |
commit | 55a5e900b47474528fd6a04ee632164143b05380 (patch) | |
tree | f24d9cf1151533059b03e7236480523f317681f3 /doc/zmq_proxy.3 | |
parent | c7a23bc0c2d36797331563feab83b5df936ecf07 (diff) |
prepare for upgrade
Diffstat (limited to 'doc/zmq_proxy.3')
-rw-r--r-- | doc/zmq_proxy.3 | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/doc/zmq_proxy.3 b/doc/zmq_proxy.3 deleted file mode 100644 index d2a6063..0000000 --- a/doc/zmq_proxy.3 +++ /dev/null @@ -1,89 +0,0 @@ -'\" t -.\" Title: zmq_proxy -.\" Author: [see the "AUTHORS" section] -.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> -.\" Date: 03/10/2014 -.\" Manual: 0MQ Manual -.\" Source: 0MQ 4.0.1 -.\" Language: English -.\" -.TH "ZMQ_PROXY" "3" "03/10/2014" "0MQ 4\&.0\&.1" "0MQ Manual" -.\" ----------------------------------------------------------------- -.\" * Define some portability stuff -.\" ----------------------------------------------------------------- -.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.\" http://bugs.debian.org/507673 -.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html -.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" ----------------------------------------------------------------- -.\" * set default formatting -.\" ----------------------------------------------------------------- -.\" disable hyphenation -.nh -.\" disable justification (adjust text to left margin only) -.ad l -.\" ----------------------------------------------------------------- -.\" * MAIN CONTENT STARTS HERE * -.\" ----------------------------------------------------------------- -.SH "NAME" -zmq_proxy \- start built\-in 0MQ proxy -.SH "SYNOPSIS" -.sp -\fBint zmq_proxy (const void \fR\fB\fI*frontend\fR\fR\fB, const void \fR\fB\fI*backend\fR\fR\fB, const void \fR\fB\fI*capture\fR\fR\fB);\fR -.SH "DESCRIPTION" -.sp -The \fIzmq_proxy()\fR function starts the built\-in 0MQ proxy in the current application thread\&. -.sp -The proxy connects a frontend socket to a backend socket\&. Conceptually, data flows from frontend to backend\&. Depending on the socket types, replies may flow in the opposite direction\&. The direction is conceptual only; the proxy is fully symmetric and there is no technical difference between frontend and backend\&. -.sp -Before calling \fIzmq_proxy()\fR you must set any socket options, and connect or bind both frontend and backend sockets\&. The two conventional proxy models are: -.sp -\fIzmq_proxy()\fR runs in the current thread and returns only if/when the current context is closed\&. -.sp -If the capture socket is not NULL, the proxy shall send all messages, received on both frontend and backend, to the capture socket\&. The capture socket should be a \fIZMQ_PUB\fR, \fIZMQ_DEALER\fR, \fIZMQ_PUSH\fR, or \fIZMQ_PAIR\fR socket\&. -.sp -Refer to \fBzmq_socket\fR(3) for a description of the available socket types\&. -.SH "EXAMPLE USAGE" -.SS "Shared Queue" -.sp -When the frontend is a ZMQ_ROUTER socket, and the backend is a ZMQ_DEALER socket, the proxy shall act as a shared queue that collects requests from a set of clients, and distributes these fairly among a set of services\&. Requests shall be fair\-queued from frontend connections and distributed evenly across backend connections\&. Replies shall automatically return to the client that made the original request\&. -.SS "Forwarder" -.sp -When the frontend is a ZMQ_XSUB socket, and the backend is a ZMQ_XPUB socket, the proxy shall act as a message forwarder that collects messages from a set of publishers and forwards these to a set of subscribers\&. This may be used to bridge networks transports, e\&.g\&. read on tcp:// and forward on pgm://\&. -.SS "Streamer" -.sp -When the frontend is a ZMQ_PULL socket, and the backend is a ZMQ_PUSH socket, the proxy shall collect tasks from a set of clients and forwards these to a set of workers using the pipeline pattern\&. -.SH "RETURN VALUE" -.sp -The \fIzmq_proxy()\fR function always returns \-1 and \fIerrno\fR set to \fBETERM\fR (the 0MQ \fIcontext\fR associated with either of the specified sockets was terminated)\&. -.SH "EXAMPLE" -.PP -\fBCreating a shared queue proxy\fR. -.sp -.if n \{\ -.RS 4 -.\} -.nf -// Create frontend and backend sockets -void *frontend = zmq_socket (context, ZMQ_ROUTER); -assert (backend); -void *backend = zmq_socket (context, ZMQ_DEALER); -assert (frontend); -// Bind both sockets to TCP ports -assert (zmq_bind (frontend, "tcp://*:5555") == 0); -assert (zmq_bind (backend, "tcp://*:5556") == 0); -// Start the queue proxy, which runs until ETERM -zmq_proxy (frontend, backend, NULL); -.fi -.if n \{\ -.RE -.\} -.sp -.SH "SEE ALSO" -.sp -\fBzmq_bind\fR(3) \fBzmq_connect\fR(3) \fBzmq_socket\fR(3) \fBzmq\fR(7) -.SH "AUTHORS" -.sp -This page was written by the 0MQ community\&. To make a change please read the 0MQ Contribution Policy at \m[blue]\fBhttp://www\&.zeromq\&.org/docs:contributing\fR\m[]\&. |