[prev in list] [next in list] [prev in thread] [next in thread] 

List:       zeromq-dev
Subject:    Re: [zeromq-dev] Zeromq Paranoid Pirate & Majordomo examples.
From:       KIU Shueng Chuan <nixchuan () gmail ! com>
Date:       2014-08-23 21:28:23
Message-ID: CAP2skc-acnuU2bfAvUYXCTun0-o4+s0RhhhUEt0TRsmTVJOX7Q () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


In your req2Router.cpp file, the RCVMORE socket option uses int64_t. It
changed from int64_t in zmq 2.2 to int in zmq 3.2.x and later.
On 24 Aug 2014 04:53, "Riskybiz" <riskybizlive@live.com> wrote:

> Dear 0MQ developers,
>
>
>
> For some months I've been trying to get the Paranoid Pirate & Majordomo
> patterns working so that I may study their operation and implement the
> principles in some new development work I have in mind.  What I would lik=
e
> to achieve is relatively simple.
>
>
>
> =B7         Using 0MQ networking I would like several sources (REQ?) of
> time-series data to pass any accumulated time series data history to a
> central point (ROUTER?).
>
> =B7         When the accumulated data history has been passed then the
> sources would pass real time updates to the central point; as and when th=
e
> new data are generated.
>
> =B7         I would like the data flows to be asynchronous and that the
> data sources 'push' data to the central point.
>
> =B7         It is important that no data is lost due to slow joiner
> syndrome.  It is also important that the data arrives in the correct orde=
r;
> otherwise the data will be gobbledegook.
>
> =B7         A facility to detect when data sources have died/gone away,
> heartbeating.
>
> =B7         Preferably to I'd like to work in C++; it's familiar.
>
> =B7         Windows 7 compatibility is essential, I am tied to using
> Windows it is where the data sources will run.
>
>
>
> In working through the problems getting Paranoid Pirate & Majordomo to
> work  I came to suspect that the problem lay in the REQ-ROUTER connection
> which is present in both the Paranoid Pirate and Majordomo patterns.  Thi=
s
> stackoverflow question explains some of approaches I've tried:  Stackover=
flow
> question
> <http://stackoverflow.com/questions/24597251/zeromq-issues-with-example-n=
etworking-patterns-paranoid-pirate-and-majordomo>
>
>
>
> I even tried building CZMQ on Windows 7 so that I could try the C languag=
e
> original versions of the Paranoid Pirate & Majordomo patterns.  Have you
> tried building CZMQ on Windows; it's just a nightmare?  The provided Visu=
al
> Studio solution file just didn't work and the instructions are practicall=
y
> non-existent.  Searching the internet for help found  rocket scientists
> <http://lists.zeromq.org/pipermail/zeromq-dev/2013-October/022981.html>
>  proposing cross compilation as the solution; but where to start with
> that?  Really should it be that difficult?  All I could see there was
> another month of lost weekends.  So all in all that was a dead end.
>
>
>
> Seeking answers & further investigating REQ-ROUTER I discovered this
> example: simple req2Router example
> <http://thisthread.blogspot.co.uk/2012/05/very-simple-req-router-example.=
html>
> and built it into a working Windows program. The cpp  & header file code
> for it are here  req2Router cpp file <http://pastebin.com/g66mzGm9> and z=
mq2.h
> header file <http://pastebin.com/yti8jUEc> .
>
>
>
> What I discovered was that this simple req2Router program would function
> properly when linked against zeromq-2.2.0 but would *not* function when
> linked against zeromq-3.2.3 or zeromq-4.0.4.  N.B. When running tests I
> ensured that the corresponding libzmq.dll file was used from the relevant
> version of zeromq. Could this be the problem in getting the Paranoid Pira=
te
> & Majordomo examples to work; that the example code is zeromq version
> dependant?  Does anyone know why this might be the case? What has changed
> between versions which would affect the REQ-ROUTER functionality?
>
>
>
> I really am stuck and getting tangled with this and am losing time to it.
> I cannot move forward with the plan I have in mind until I can get workin=
g
> implementations of Paranoid Pirate,  Majordomo & Asynchronous Majordomo o=
n
> Windows as a foundation on which to build.  It's doubly difficult because=
 I
> want to learn from the examples but debugging them at the same time is
> testing to say the least.
>
>
>
> Is anyone able to help get these examples working with the latest version=
s
> of zeromq on Windows, not just for my sake but also for the next person w=
ho
> tries?  Surely I can't be the only person who needs or wants to try this?
>
>
>
> With thanks,
>
>
>
> Riskybiz.
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev@lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
>

[Attachment #5 (text/html)]

<p dir="ltr">In your req2Router.cpp file, the RCVMORE socket option uses int64_t. It \
changed from int64_t in zmq 2.2 to int in zmq 3.2.x and later. </p> <div \
class="gmail_quote">On 24 Aug 2014 04:53, &quot;Riskybiz&quot; &lt;<a \
href="mailto:riskybizlive@live.com">riskybizlive@live.com</a>&gt; wrote:<br \
type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"> <div lang="EN-GB" link="blue" \
vlink="purple"><div><p class="MsoNormal">Dear 0MQ developers,<u></u><u></u></p><p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">For some months \
I&rsquo;ve been trying to get the Paranoid Pirate &amp; Majordomo patterns working so \
that I may study their operation and implement the principles in some new development \
work I have in mind.&nbsp; What I would like to achieve is relatively \
simple.<u></u><u></u></p> <p class="MsoNormal"><u></u>&nbsp;<u></u></p><p \
style="margin-left:41.45pt"><u></u><span style="font-family:Symbol"><span>·<span \
style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>Using 0MQ networking I would like several sources (REQ?) \
of time-series data to pass any accumulated time series data history to a central \
point (ROUTER?).<u></u><u></u></p> <p style="margin-left:41.45pt"><u></u><span \
style="font-family:Symbol"><span>·<span style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>When the accumulated data history has been passed then \
the sources would pass real time updates to the central point; as and when the new \
data are generated.<u></u><u></u></p> <p style="margin-left:41.45pt"><u></u><span \
style="font-family:Symbol"><span>·<span style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>I would like the data flows to be asynchronous and that \
the data sources &lsquo;push&rsquo; data to the central point.<u></u><u></u></p> <p \
style="margin-left:41.45pt"><u></u><span style="font-family:Symbol"><span>·<span \
style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>It is important that no data is lost due to slow joiner \
syndrome.&nbsp; It is also important that the data arrives in the correct order; \
otherwise the data will be gobbledegook.<u></u><u></u></p> <p \
style="margin-left:41.45pt"><u></u><span style="font-family:Symbol"><span>·<span \
style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>A facility to detect when data sources have died/gone \
away, heartbeating.<u></u><u></u></p> <p style="margin-left:41.45pt"><u></u><span \
style="font-family:Symbol"><span>·<span style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>Preferably to I&rsquo;d like to work in C++; it&rsquo;s \
familiar.<u></u><u></u></p> <p style="margin-left:41.45pt"><u></u><span \
style="font-family:Symbol"><span>·<span style="font:7.0pt &quot;Times New \
Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
</span></span></span><u></u>Windows 7 compatibility is essential, I am tied to using \
Windows it is where the data sources will run.<u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">In working through the \
problems getting Paranoid Pirate &amp; Majordomo to work &nbsp;I came to suspect that \
the problem lay in the REQ-ROUTER connection which is present in both the Paranoid \
Pirate and Majordomo patterns.&nbsp; This stackoverflow question explains some of \
approaches I&rsquo;ve tried:&nbsp; <a \
href="http://stackoverflow.com/questions/24597251/zeromq-issues-with-example-networking-patterns-paranoid-pirate-and-majordomo" \
target="_blank">Stackoverflow question</a><u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">I even tried building \
CZMQ on Windows 7 so that I could try the C language original versions of the \
Paranoid Pirate &amp; Majordomo patterns.&nbsp; Have you tried building CZMQ on \
Windows; it&rsquo;s just a nightmare?&nbsp; The provided Visual Studio solution file \
just didn&rsquo;t work and the instructions are practically non-existent.&nbsp; \
Searching the internet for help found &nbsp;<a \
href="http://lists.zeromq.org/pipermail/zeromq-dev/2013-October/022981.html" \
target="_blank">rocket scientists</a> &nbsp;proposing cross compilation as the \
solution; but where to start with that?&nbsp; Really should it be that \
difficult?&nbsp; All I could see there was another month of lost weekends.&nbsp; So \
all in all that was a dead end.<u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">Seeking answers &amp; \
further investigating REQ-ROUTER I discovered this example: <a \
href="http://thisthread.blogspot.co.uk/2012/05/very-simple-req-router-example.html" \
target="_blank">simple req2Router example</a> and built it into a working Windows \
program. The cpp &nbsp;&amp; header file code for it are here &nbsp;<a \
href="http://pastebin.com/g66mzGm9" target="_blank">req2Router cpp file</a> and <a \
href="http://pastebin.com/yti8jUEc" target="_blank">zmq2.h header file</a> \
.<u></u><u></u></p> <p class="MsoNormal"><u></u>&nbsp;<u></u></p><p \
class="MsoNormal">What I discovered was that this simple req2Router program would \
function properly when linked against zeromq-2.2.0 but would <u>not</u> function when \
linked against zeromq-3.2.3 or zeromq-4.0.4.&nbsp; N.B. When running tests I ensured \
that the corresponding libzmq.dll file was used from the relevant version of zeromq. \
Could this be the problem in getting the Paranoid Pirate &amp; Majordomo examples to \
work; that the example code is zeromq version dependant?&nbsp; Does anyone know why \
this might be the case? What has changed between versions which would affect the \
REQ-ROUTER functionality?<u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">I really am stuck and \
getting tangled with this and am losing time to it. I cannot move forward with the \
plan I have in mind until I can get working implementations of Paranoid Pirate, \
&nbsp;Majordomo &amp; Asynchronous Majordomo on Windows as a foundation on which to \
build.&nbsp; It&rsquo;s doubly difficult because I want to learn from the examples \
but debugging them at the same time is testing to say the least.<u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">Is anyone able to help \
get these examples working with the latest versions of zeromq on Windows, not just \
for my sake but also for the next person who tries?&nbsp; Surely I can&rsquo;t be the \
only person who needs or wants to try this?<u></u><u></u></p> <p \
class="MsoNormal"><u></u>&nbsp;<u></u></p><p class="MsoNormal">With \
thanks,<u></u><u></u></p><p class="MsoNormal"><u></u>&nbsp;<u></u></p><p \
class="MsoNormal">Riskybiz.<u></u><u></u></p></div></div><br>_______________________________________________<br>


zeromq-dev mailing list<br>
<a href="mailto:zeromq-dev@lists.zeromq.org">zeromq-dev@lists.zeromq.org</a><br>
<a href="http://lists.zeromq.org/mailman/listinfo/zeromq-dev" \
target="_blank">http://lists.zeromq.org/mailman/listinfo/zeromq-dev</a><br> \
<br></blockquote></div>



_______________________________________________
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic