IceStorm

2 min read

2 min read

2 min read

2 min read

2 min read

2 min read

2 min read

2 min read

2 min read

IceStorm is a publish/subscribe service for Ice applications.

Consider a weather monitoring application in which sensors report their readings, such as temperature and humidity, to several weather stations:

Sensors send their readings directly to each weather station.

In this architecture, each sensor keeps track of the weather stations, sends each reading to every one of them, and handles the stations it cannot reach.

With IceStorm, the sensors are publishers and the weather stations are subscribers:

Sensors publish their readings to an IceStorm topic, and IceStorm forwards them to each weather station.

A sensor publishes each reading once to an IceStorm topic, however many weather stations there are, and IceStorm forwards the reading to the weather stations subscribed to that topic:

  • Weather stations subscribe to and unsubscribe from the topic through IceStorm, without involving the sensors.
  • IceStorm handles the weather stations it cannot reach, again without involving the sensors.