Page tree

Documentation for Ice 3.5. The latest release is Ice 3.7. Refer to the space directory for other releases.

Skip to end of metadata
Go to start of metadata

Freeze is a collection of services that simplify the use of persistence in Ice applications, as shown below:

Layer diagram for Freeze persistence services.

The Freeze map is an associative container mapping any Slice key and value types, providing a convenient and familiar interface to a persistent map. Freeze evictors are an especially powerful facility for supporting persistent Ice objects in a highly-scalable implementation.

The Freeze persistence services comprise:

  • Freeze evictor
    A highly-scalable implementation of an Ice servant locator that provides automatic persistence and eviction of servants with only minimal application code.
  • Freeze map
    A generic associative container. Code generators are provided that produce type-specific maps for Slice key and value types. Applications interact with a Freeze map just like any other associative container, except the keys and values of a Freeze map are persistent.

As you will see from the examples in this discussion, integrating a Freeze map or evictor into your Ice application is quite straightforward: once you define your persistent data in Slice, Freeze manages the mundane details of persistence.

Freeze is implemented using Berkeley DB, a compact and high-performance embedded database. The Freeze map and evictor APIs insulate applications from the Berkeley DB API, but do not prevent applications from interacting directly with Berkeley DB if necessary.


  • No labels