OpenSpaces is primarily designed to enable scaling out of stateful applications in a simple way using Spring. It is shipped as an open source initiative from GigaSpaces, that supports the GigaSpaces Space-Based Architecture model out of the box. OpenSpaces is useful for Spring users, SOA/EDA developers, transactional applications, real-time analytics, and Web 2.0 applications.
For a list of FAQ, like licensing model and positioning questions, refer to the OpenSpaces FAQ section.
A detailed description of the model and theory that led to the inception of OpenSpaces as a next-generation development and runtime platform for developing SOA/EDA applications simply; and Space Based Architecture (SBA) as the means to achieve scalability in a high throughput, stateful environment is provided in the following white paper: The Scalability Revolution: From Dead End to Open Road.
In this paper, we define scalability, and show that inherent scalability barriers represent a dead end for today's tier-based business-critical applications. We argue that in order to survive, these applications must achieve linear scalability, and that the only way to do so is to switch from the tier-based model to a new architectural approach. We suggest a novel approach in which applications are partitioned into self-sufficient processing units, and present Space-Based Architecture (SBA) as a practical implementation of this approach. We demonstrate that SBA guarantees both linear scalability and simplicity for designers, developers and administrators – transforming scalability from dead end to open road.
The Space-Based Architecture and the End of Tier-based Computing white paper describes how changes in the IT resources landscape, such as memory capacity availability, network speed, the emergence of powerful and new multi-core commodity hardware, and the introduction of SOA/Grid architectures tout the promise of achieving true linearly-scalable systems at a lower cost. It introduces how the Space-Based Architecture (SBA) approach can be used as a means for transforming existing tier-based applications into linearly and dynamically scalable services.
OpenSpaces has been built to support the theory behind these concepts out of the box, and make the development of applications based on this model as simple as Spring.
For a detailed, high-level introduction to OpenSpaces, refer to the OpenSpaces Overview.
- OpenSpaces Components — Built-in OpenSpaces components (plain beans with Spring integration) that simplify the development of OpenSpaces Processing Units.
- OpenSpaces Examples — OpenSpaces data example; OpenSpaces Hello World example.
- OpenSpaces Data Example — This example gives a more extensive overview of OpenSpaces, the Processing Unit and the enhanced configurations in the pu.xml file. The example contains two Processing Units; one that feeds data objects into the system, and another that reads those objects and processes them.
- OpenSpaces Hello World Example — This example introduces OpenSpaces and the Processing Unit with its configuration file, the pu.xml.
- OpenSpaces Frequently Asked Questions — Frequently asked questions about OpenSpaces.
- OpenSpaces Overview — The theory behind OpenSpaces and Space-Based Architecture (SBA); Developing high throughput EDA/SOA applications using OpenSpaces and SBA; OpenSpaces architecture; SLA-driven containers.
- OpenSpaces Persistency Scenarios — Different Space persistency scenarios and how they can be configured with OpenSpaces.
- OpenSpaces Processing Unit — OpenSpaces support for processing unit construction and deployment, in accordance with the SBA pattern.