System Environment

  Search Here
Searching XAP 6.0 Documentation

                                               

Section Summary: Deployment architecture; main configuration elements; environment requirements for machines running a space instance.

Overview

This section explains the main concepts and elements of the GigaSpaces system environment, including space, space container, Processing Units, server startup scripts, properties and environment variables, and how to use them to set up the environment.

Deployment Architecture

Key Environment Elements

  • Processing Units - For more details, refer to the OpenSpaces Processing Unit section.
  • Space (or cache)
  • Space container
  • Service container (or GSC)
  • Cluster

The core element in the GigaSpaces architecture is the JavaSpaces space (the word cache is used to describe a space configured to act as a cache instance).

A space/cache always runs in a space container, a logical unit of the GigaSpaces server. The space container is encased in a service container: this enables dynamic deployment of spaces, and allows applications to access a space as a service (for more about the grid service container, see Service Grid).

Two or more spaces can form a cluster. The cluster comprises multiple spaces running in one or more containers. Two common clustering topologies are replicated and partitioned (see Space Cluster Topologies).

Remote vs. Embedded Space

Applications can access the space as a remote server. Direct communication with the space is facilitated by the RMI protocol or an NIO-based protocol; the space is discovered using the Jini Lookup Service or RMI. Alternatively, the space can be deployed as a service using the Service Grid.

The space can also run within the application's JVM. This type of space is called an embedded space.

Running the Remote Space

To run a space server:

Expand this...

Key Configuration Elements

The following configuration elements participate in the GigaSpaces runtime environment:

  • Configuration schemas (<GigaSpaces Root>\config\schemas*-schema.xml or .xsl) – XML configuration files used as templates for the configuration of a space, container, or cluster.
    • Space configuration schemas define the space instance configuration, including serialization mode, protocol, persistency model, and memory management.
    • Container configuration schemas manage the lifecycle of the space and the lookup directory.
    • Cluster configuration schemas define the space cluster topology. The topology is defined using three policies: replication, load balancing and failover.
  • Default properties (com.gs.*) – variables used in the configuration schemas. The default properties hold the default values, which are not user-editable. These can be overwritten by user-defined values.
  • Custom properties (<GigaSpaces Root>\config\gs.properties) - Ways to overwrite the configuration.

    For more details, refer to the Custom Properties - gs.properties section.

  • System properties in the Java command (-Dcom.gs.*) – properties can be set as system properties, using the -D switch of the Java command in gsInstance. Values of system properties override the default properties, and those in the custom properties file, if used.

    For more details, refer to the System Properties List section.

  • Environment variables (<GigaSpaces Root]\bin\setenv.bat or .sh) – environment variables used by GigaSpaces are set automatically by setenv.bat (this file is invoked by the server startup scripts). Among the variables are JAR locations, system properties for RMI, verbose levels, Cygwin support, and support for command line options provided by different JVM vendors.

    The JAVA_HOME variable is usually set manually. Be sure to define this as an operating system variable, and set its value to the root directory of the JDK. If you do not define it, GigaSpaces searches for the JDK using the system PATH variable.

    For more details, refer to the Common Environment Variables section.

  • Open Spaces Components – Built-in Open Spaces components (plain beans with Spring integration) that simplify the development of Open Spaces Processing Units.

    For more details, refer to the OpenSpaces Components section.

  • Service Grid Deployment Descriptors (SDDs) – define the prerequisites for running a service, the implementation details, scaling policy, failover detection, how many instances need to be deployed per machine, and how many instances in total. GigaSpaces provides default deployment descriptors for common cluster topologies.

    For more details, refer to the Service Grid Deployment Descriptor section.

Flat Configuration Files Structure

Configuration files (libraries, properties files, schema files, JMS files, container.xml files, External Data Source/Hibernate files, POJO mapping files, etc.) can be organized in a flat structure – meaning under the <GigaSpaces Root> folder, or under their main folder without having sub-folders.

If you want to move certain libraries (jar files), you must edit the Class-Path entry in the <GigaSpaces Root>\lib\JSpaces.jar\MANIFEST.MF to match the desired structure. If you are using the GS_JARS variable that is set as part of the setenv shell, it also needs to be modified according to the new structure.

You do not need to update the MANIFEST.MF file and the GS_JARS variable when moving any other types of configuration files.

Section Contents


GigaSpaces 6.0 Documentation Contents (Current Page in Bold)

    Java

    C++

    .NET

    Middleware Capabilities

    Configuration and Management

Add GigaSpaces wiki search to your browser search engines!
(works on Firefox 2 and Internet Explorer 7)

Labels

 
(None)