in reply to Re^2: How to do multi-threaded RPC::XML::Server
in thread How to do multi-threaded RPC::XML::Server

Thank you again for your very helpful post earlier!!!! I very much used it as a basis for what to do next.

We finally got to implementing this.

Here's an update:
Our server is actually running rjay's RPC::XML::Server, which is a base class for his RPC-XML server tuned for mod_perl. Unfortunately, our server's running apache2 with mod_perl2. rjay's Apache::RPC::Server needs mod_perl 1.3, and Apache::RPC::Server doesn't support mod_perl2 yet.

I also tried writing thread-pooling manually! I used ithreads with the module threads. I wrote a thread pooling script that worked really well as a separate script.

Unfortunately, there was an incompatibility with the threads module and rjay's RPC::XML::Server server module. I kept getting a message about “use of inherited AUTOLOAD for non-method RPC::XML::Server::threads::create” or something like that. I tried editing POSIX.pm, XSLoader.pm, and a couple other modules in order to change some of their autoload code. Nothing that I've done up until this point worked.

Maybe somebody here has an idea as to what I could do next?

Thanks again!!!!!

  • Comment on Re^3: How to do multi-threaded RPC::XML::Server

Replies are listed 'Best First'.
Re^4: How to do multi-threaded RPC::XML::Server
by zubster22 (Initiate) on Aug 21, 2014 at 17:36 UTC

    Quick response:
    I found the root on the incompatibility!
    Appropriately, it had nothing to do with threads or anything. I had named a variable with the same name as a module.
    My test script let it go, but somewhere in Server.pm it had no strict 'vars';. That caused the script to crash with the AUTOLOAD message.

    We were able to add threading to rjay's RPC::XML::Server module using the threads module. This project is moving along.

    Thanks!!!!