Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: updated structure so that Geode in 5 mins link from website guides through installation

...

Apache Geode is a mature, robust technology originally developed by GemStone Systems. Commercially available as GemFire™, it was first deployed in the financial sector as the transactional, low-latency data engine used in Wall Street trading platforms.  Today Apache Geode technology is used by hundreds of enterprise customers for high-scale business applications that must meet low latency and 24x7 availability requirements.

How to Get Apache Geode

You can download Apache Geode from the website, run a Docker image , or install with homebrew  on OSX. Application developers can load dependencies from Maven Central .

Code Block
languagexml
titleMaven
<dependencies>

    <dependency>
        <groupId>org.apache.geode</groupId>
        <artifactId>geode-core</artifactId>
        <version>$VERSION</version>
    </dependency>
</dependencies>
Code Block
languagegroovy
titleGradle
dependencies {
  compile "org.apache.geode:geode-core:$VERSION"
}

Main

...

Concepts

...

and

...

Components

Caches are an abstraction that describe a node in a Geode distributed system.

...

  • Combines redundancy, replication, and a "shared nothing" persistence architecture to deliver fail-safe reliability and performance.
  • Horizontally scalable to thousands of cache members, with multiple cache topologies to meet different enterprise needs. The cache can be distributed across multiple computers.
  • Asynchronous and synchronous cache update propagation.
  • Delta propagation distributes only the difference between old and new versions of an object (delta) instead of the entire object, resulting in significant distribution cost savings.
  • Reliable asynchronous event notifications and guaranteed message delivery through optimized, low latency distribution layer.
  • Data awareness and real-time business intelligence. If data changes as you retrieve it, you see the changes immediately.
  • Integration with Spring Framework to speed and simplify the development of scalable, transactional enterprise applications.
  • JTA compliant transaction support.
  • Cluster-wide configurations that can be persisted and exported to other clusters.
  • Remote cluster management through HTTP.
  • REST APIs for REST-enabled application development.
  • Rolling upgrades may be possible, but they will be subject to any limitations imposed by new features.

Anchor
Geode in 5 minutes
Geode in 5 minutes

...

How to Get Apache Geode

You can download Apache Geode from the website, run a Docker image , or install with homebrew  on OSX. Application developers can load dependencies from Maven Central .

Code Block
languagexml
titleMaven
<dependencies>

    <dependency>
        <groupId>org.apache.geode</groupId>
        <artifactId>geode-core</artifactId>
        <version>$VERSION</version>
    </dependency>
</dependencies>


Code Block
languagegroovy
titleGradle
dependencies {
  compile "org.apache.geode:geode-core:$VERSION"
}

Geode in 5 minutes

Download Geode by following one of the methods described aboveDownload and install Geode binaries from http://geode.apache.org/releases/, and follow the installation instructions at in the posted manual at http://geode.apache.org/docs/

...

Write a client application (this example uses a Gradle build script):

 

Code Block
languagejava
titlebuild.gradle
apply plugin: 'java' apply plugin: 'application' mainClassName = 'HelloWorld' repositories { mavenCentral() } dependencies { compile 'org.apache.geode:geode-core:1.1.0' runtime 'org.slf4j:slf4j-log4j12:1.7.24' }


Code Block
languagejava
titlesrc/main/java/HelloWorld.java
import java.util.Map;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.client.*;

public class HelloWorld {
  public static void main(String[] args) throws Exception {
    ClientCache cache = new ClientCacheFactory()
      .addPoolLocator("localhost", 10334)
      .create();
    Region<String, String> region = cache
      .<String, String>createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY)
      .create("hello");

    region.put("1", "Hello");
    region.put("2", "World");

    for (Map.Entry<String, String>  entry : region.entrySet()) {
      System.out.format("key = %s, value = %s\n", entry.getKey(), entry.getValue());
    }
    cache.close();
  }
}

...