APPSERVER

From ICE Enterprises
Jump to navigation Jump to search

Provides a service to allow remote execution of NeXtMidas commands.

<command string> - (Client Only:) The command string to run on the server.

In server mode this allows remote users to connect with commands to run. In
client mode this will contact a given server and run a command on the server.
The underlying protocol used is built on top of RMIF messages (no pipes) and
many of the RMIF-tuning options are provided here. Where appropriate, the naming
convention follows RMIF.

A command run on the server literally runs on the server. This means that if
the PLOT command is run the PLOT window will come up on the server (not the
client) unless the server's X11 DISPLAY attributes have been altered.

Since NeXtMidas 2.3.0 a modified version of this is used for interaction between
nm processes when using NeXtOpt (NeXtMidas as an option tree for X-Midas). Prior
to NeXtMidas 2.3.0 NeXtOpt used IPC (inter-process-communication) to communicate
between processes. This change was made due to stability issues encountered when
using IPC.

Messages:
  Internally handles most of the messages used by RMIF in addition to APPSERVER
  messages. These messages should be treated as "reserved" and should not be
  used by external users (they are subject to change without notice).

Examples:
  1. Start the server (on port 9999):
       nM> appserver/server=9999

  2. Start the server (on default port):
       nM> appserver/server

  3. Run the PLOT command on the server (assume server is at myserver:9999),
     use local port 9000 with prange of 10:
       nM> appserver/remote="myserver:9999"/client=9000/prange=10 plot world

  4. Run the PLOT command on the server (assume server is at myserver:10302),
     use default port 9000 with prange of 10:
       nM> appserver/remote="myserver:10302"/prange=10 plot world

Switches:
  /CLIENT=p     - Run in client mode (p=LocalPort, default port is 10302).
                  (This is the default when /SERVER is not specified.)
  /HOMEPAGE=p   - Homepage location for HTTP web server (p=Path).
  /HTTP         - Start HTTP server for application status and debug.
  /LOG=fname    - Logs all control activity to text file.
  /PPT=tbl      - Port Parameter Table for tuning connections (see RMIF).
  /PRANGE=n     - Range of ports to use if initial port is in use [Def=1].
  /REMOTE=r     - Sets the address of the remote connection (i.e. server) when
                  in /CLIENT mode. (Example: /REMOTE="myserver:9999")
  /SAVEPORT=r   - Once started save the number of the port being used to
                  the named result (this is often used along with /PRANGE=).
  /SERVER=p     - Run in server mode (p=PortNum, default port is 10302).
                  (Can not be combined with /CLIENT).