The Perl Apprenticeship Site

The site

Welcome, Guest
Home
 

Search

All the projects
Browse by category
 

Login

Username:
Password:
Forgot my password
New user
 
Download source
 
Complaints / Compliments?
 

Latest projects

File comparison Jan 17, 2007
Metaphorio Apr 18, 2005
Masonik Apr 18, 2005
WebLinux Apr 18, 2005
Webioman (Updated) Feb 11, 2005
 
22 projects in the system.

Webioman (Updated)

Created: February 11, 2005

Webioman was originally intended to be a web I/O manager for programs running on a web-server machine. It is now part of a bigger picture--See the Webioman Update Link. I wrote the initial Mason component employing IPC::Open3 and IO::Select to control STDIN, STDOUT (unbuffered) and STDERR, patterned after Perl Cookbook recipe 16.9. I am not an IPC expert, so I took this on as an empirical research programming task. I soon realized that it was not practical to debug this script in the ModPerl-Mason context. So I converted the Webio.mas file to a Perl test script. I soon realized that the Cookbook recipe was totally inadequate. I began evolving the script and the Fortran/C code of demo program. I was able to get the demo running with Open3 by having both the parent and the child send USR1 and USR2 signals to each other. But it was not totally reliable. Sometimes it would block the output from the child, and I was not able to figure out why. I decided to look for another approach to the problem, and learned about the new IPC::Run API module, developed by Barrie Slaymaker and maintained by Richard Soderberg. I was elated. It seemed to be just what the doctor ordered for my depression. In fact, it only took me one day to get a modified Webio script working for the demo. The next step is to interface with the web using Mason. My initial concept of how this would work was naive, because a single process wrapper is not feasible with the web-request/respose cycle. A client-pull or server-push dynamic document scheme is necessary. I am now working on a client-pull refresh scheme using a Postgresql database instead of signals to interact with the Fortran/C executable. See the Webioman Updated Link for more info on the new approach.

Categories: GUI apps, mod_perl, Network, Web
Project status: Active
Support level: A lot
Difficulty: 6

Consider a difficulty of 1 to be "anyone" and a difficulty of 10 to be "gurus only".

Members

beartham Admin
 

Links

WebLinux--A Metaphoric Web Portal API
Webioman Update
If you are interested in getting involved with this project, please check the project's website if it has one, or send one of the project admins email.