Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / DevGuideExamples / AMH_AMI / README
blobf4f7ac253709c844860e867c9c13ee1252219d7e
3 File: DevGuideExamples/AMH_AMI/README
5 The example in this directory demonstrates how AMH can be coupled with
6 AMI to create very efficient and scalable middle components for
7 multi-tier applications. In this case, a client connects to a middle
8 server which in turn is connected to an inner server. the client
9 submits a question to the middle server, which forwards the question
10 on to the inner server. The inner server then waits a few seconds, to
11 simulate a busy process, then replies. The reply is handled
12 asynchronously by the middle server, using AMI, then forwarded to the
13 original client using AMH. Neither the client nor the inner server are
14 aware of the asynchronous nature of the middle server.
16 The inner server has a single startup option, -crash. When supplied,
17 the server will induce an exception when invoked, rather than
18 returning the answer.
20 The middle server also has a single option, -no_AMH. When run in this
21 mode, the IOR it publishes will refer to an object that does not use
22 AMH and AMI. This allows you to compare the behavior and source code
23 for these two modes of operation.
25 How to Run
26 ----------
28 Start the inner server (writes inner.ior) :
29 ------------------
30 ./inner_server [-crash]
33 Then start the middle server (writes middle.ior):
34 ------------------
35 ./middle_server [-no_AMH]
37 Finally, run the client:
38 ------------------
39 ./client
41 Exeuction via Perl Script
42 -------------------------
44 A Perl script has been created to automate the steps shown
45 above.  This script can be run via the following command:
47 ./run_test.pl
50 NOTE:
52    If you run on Windows platform, go to Debug or Release directory to run the
53    script via following command:
55    perl ../run_test.pl