The Runtime Image

The Runtime Image

The Fabric3 Server runtime image is organized in the following way:

/bin

 

 

 

 

Startup modules

 

/lib

 

 

 

 

Modules required to start the runtime host

 

/boot

 

 

 

 

Modules required for the runtime bootstrap and primordial system services

 

/host

 

 

 

 

Libraries shared between the runtime and application (e.g. web services annotations)

 

/extensions

 

 

 

 

Extension modules that are able to be loaded by all runtime instances

 

/runtimes

 

 

 

 

Specific runtime instance configuration is hosted by default under this directory

 

 

<runtime-name>

 

 

 

top level directory for a runtime configuration

 

 

 

/config

 

 

Contains systemConfig.xml for configuring the runtime and extensions

 

 

 

/deploy

 

 

File system deploy directory for the controller and single-VM runtimes

 

 

 

/repository

 

 

 

 

 

 

 

/runtime

 

Extensions only loaded for the runtime image

 

 

 

 

/user

 

User contributions (only populated on the controller and single-VM runtimes)

 

 

 

/data

 

 

Persistent data directory for a runtime instance (e.g. transaction log)

 

 

 

/tmp

 

 

Temporary data and artifact cache for a runtime instance

 

Enabling Pass-By-Value Semantics

By default, Fabric3 is configured to use pass-by-reference semantics when invoking remotable services collocated with their clients. This avoids the overhead of parameter copying. In some cases, this may not be desirable, for example, if a service directly modifies parameter data that should not be visible to clients. To avoid this, the runtime can be configured to follow SCA by-value semantics by setting the @enableByValue attribute to true on the SCA setting in serviceConfig.xml:

<sca enableByValue="true"/>