Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
> what your actual goals are

My actual goal is the implementation of a peer-to-peer framework. On top of this framework is a central executive node. Nodes are servers (database servers, analysis servers, collaboration servers etc.) and clients (desktop computers). The peers communicate with each other using messages (xml) and chat services. You see, events are the basis for the inter-node activities.

So, this is the reason for POE, the multitasking and networking framework for Perl (...) POE is a framework for cooperative, event driven multitasking in Perl. Other languages have similar frameworks. Python has Twisted. TCL has "the event loop".

.
> but it is not clear to me what you mean by: > "multiple users cann follow the output"? > Do you mean 'follow' as in tail -f?

Yes. Imagine, one user triggers a job from a client node. The central executive processes or possibly forwards the execution request , tracks and feeds back the output to the requesting node. Other nodes/ users are informed about the execution (utilizing chat services). Furthermore, the execution request has been enqueued in the central executive's message queue. Users can send read requests. If processing is already done, they simply receive the output. If processing is not done, yet, they see the same (following) output of the process.

> You want the script to launch a process and you > want the script to be able to receive that output, > but you also want the other "people", to be able > to monitor that output. > How?

Exactly.

It is clear now, that the executors and output recipients reside on different network nodes.

> - Using concurrent copies of your script?

No.

> - By somehow attaching to 'the one copy' of > your script and your script "broadcasting" the > output to all listeners that attached?

Somehow. The central executive node actually triggers the request, receives the output and broadcasts the output.

> - By having the program write it's output directly > (or via indirection) to a file and your script > 'tail-ing' that file after it has launched the > process--so that other people can also monitor it > using tail -f or whatever they choose?

Somehow. See the above comment.

> - Have your script launch the process and capture > it's output and then, as well as doing whatever it > needs to with it, also write it to a file so that > other peope can monitor that file using tail or > whatever?

This is exactly what I want to achive.

> Each of these approaches is possible, but which is > appropriate depends entirely upon what your > requirements are.

What is the best approach if you understand my goals?


In reply to Re^2: POE and Win32::Process control by m-rau
in thread POE and Win32::Process control by m-rau

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (7)
As of 2024-04-23 19:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found