Do you want your Perl code on one server to call your PHP functions on another? "Impossible!" you say? Not with XML-RPC. XML-RPC is a standard way for any application to make requests and recieve responses from methods written in any language. Interested? I knew you would be.
What is XML-RPC? XML-RPC was developed by UserLand Software (http://www.userland.com) in April of 1998 as a technology to enable applications to talk to each other, no matter what language they are written in or where they are running. Since then, many implementations have been made beyond the original one for UserLand's Frontier product, and many major companies have adopted the technology for their products, including Microsoft's .NET and Apple's Mac OS X.
XML-RPC is a great enabler for distributed systems and system interoperability, as it allows any XML-RPC enabled applications to call the methods of other XML-RPC enabled applications, regardless of what language either application is written in, or on what machine either application is running on. This allows a perl function to make a call to a Python method, or a Java Servlet to call a PHP function, for example.
The upshot of XML-RPC is that a world of completely heterogeneous applications can talk to each other with very little work from their programmers.
What is covered in this article This article will cover installing PHP with XML-RPC support, examples of XML-RPC requests and responses, the basic functions used for XML-RPC requests, creating an XML-RPC server, creating an XML-RPC client, and suggests some resources for more information on XML-RPC.