Home News Contact
Iris Application Server
Develop high performance distributed applications using Java:
  • Invoke synchronously or asynchronously remote objects through client proxies and server side skeletons created dynamically at runtime;
  • Send notifications to connected clients using a simple callback mechanism;
  • Use integrated application security to verify user invocation privileges using only a few CPU cycles;
  • Install a SSL certificate to enable secure communication;
  • Efficiently use the system resources taking advantage of an optimized binary protocol and a Java NIO implementation.
Documentation Resources
The Development Guide and the Java API documentation are included with the downloadable package and available online: The following paragraphs are a short description of the featured implemented by the application server.
Remote Command Invocation
The Iris Application Server runs network applications comprised of command classes that are instantiated at runtime by the server as command objects. There are no special requirements on the commands, they can be any Java classes implementing interfaces that can be invoked by remote clients.

The clients obtain command proxies based on the external name of the command and cast the proxy to one of the interfaces implemented by the command class.

Dynamic Commands
The client application can instantiate dynamic commands with the following features:
  • Only the creating session can invoke the dynamic command. Other connected clients can not invoke the session commands belonging to other clients even if hacking the wire protocol, this being an important security feature;
  • The dynamic commands are cleaned up automatically on session termination or when the client proxy of the command is garbage collected or may be removed by a client API call;
  • Can encapsulate session information.
Client Callbacks
The Iris server implements a callback mechanism that allows the server application to call objects registered by the client application. This can be used to notify the client about certain server events.
Application Security
The developer defines roles representing application user types and grants execution privileges for the roles at application, command or interface level. After the application is deployed the users are assigned roles and security checks are performed with high efficiency on each request.
Secure Communication
The client can request to connect in secure mode in which case the server is authenticated and the messages that are exchanged between the client and the server are encrypted.