Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

lightweight SOAP for local applications

by schweini (Friar)
on Jun 17, 2005 at 18:54 UTC ( #467844=perlquestion: print w/replies, xml ) Need Help??

schweini has asked for the wisdom of the Perl Monks concerning the following question:

hi, all.

I recently fell in love with SOAP, XMLRPC, and their kin, so i'd like to re-structure a big application i did to use them.
My app consists of various perl/Tk programs running on different machines, and a web-interface running on a central server. My guess is that it makes sense to make the perl/Tk apps just call SOAP routines on the server, and manage the results - so far, so good. But i'd like to call a couple of the routines called by these perl/Tk apps from the web-interface, too.
My problem is that AFAIK, SOAP has a lot of overhead, and calling subs which are on the same machine via SOAP is a horrendous waste of resources, which i'd like to avoid, of course.
The obvious solution would be to make the CGI-scripts simply use the module that SOAP dispatches to, but that seems rather 'messy' because that would mean that i can't e.g. but the SOAP service on some other machine, if this would be neccesary some day, and i feel name-space-woes around the corner.
So, is there some SOAP-wrapper around that intelligently notices when to use the network, and when not? If not, is there a nice way to do this?

thanks in advance,

-schweini

Replies are listed 'Best First'.
Re: lightweight SOAP for local applications
by mda2 (Hermit) on Jun 17, 2005 at 19:15 UTC
    I did my application with SOAP, and love it!

    You can design your modules to interact with SOAP and without!

    I made some modules to make some actions and added wrappers Client and Server.

  • Client interact with server (add login, available test, autenticate on new() and logout on DESTROY)
  • Server make the call to my module.

    On development time you test your modules with a single script, if now you don't need SOAP, it's ok! At future when needs to implement SOAP lowest changes are needs...

    * You don't really need login/test/auth, but I think it's good for security.
    **SOAP::Lite design permit you to use remote modules similar local modules (with some restrictions, see doc for autodispatch)

    --
    Marco Antonio
    Rio-PM

Re: lightweight SOAP for local applications
by scmason (Monk) on Jun 17, 2005 at 19:27 UTC
    Maybe you could consider using the Tk::send and Tk::recieve IPC interface for passing messages to your Tk interface on your localhost. You can do this from a non-gui app by simply making a fake widget.

    "Never take yourself too seriously, because everyone knows that fat birds dont fly" -FLC

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://467844]
Approved by davidrw
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2020-10-29 11:16 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My favourite web site is:












    Results (270 votes). Check out past polls.

    Notices?