8. Scenario and Feature ReferenceΒΆ

AMPS offers a wide array of messaging features to solve a variety of messaging scenarios. This section presents some basic mappings between common messaging scenarios and the AMPS features that support those scenarios. Of course, this list is just a sampling of the types of applications that use AMPS.

Scenario AMPS Feature(s)
Simple, low-latency publish and subscribe (many to many messaging) with no need to persist messages ad hoc publish and subscribe
Publish and subscribe with a replayable audit trail transaction log and bookmark subscription
Snapshot of the current state of a set of messages (for example, graphing the elapsed time for all pending orders) state of the world (SOW)
Creating a view server that aggregates information about a high-velocity data feed for reporting

state of the world (SOW)

views and aggregation

transaction log and replication

Snapshot of the current state of a set of messages followed by updates to those messages (for example, showing the current status of a set of orders when a UI starts and then showing real-time updates to those messages)

state of the world (SOW)

sow_and_subscribe from client application

Ensuring that a given message is processed once, by a single subscriber (for example, a workload distribution system) message queues
Replaying messages from a point in time transaction log and bookmark subscription
Transforming messages as they are published to AMPS state of the world (SOW) and enrichment
Producing aggregate data for a stream of messages state of the world (SOW) and views or aggregated subscriptions
Coordinating work across a set of independent workers who are each assigned discrete tasks message queues
Coordinating work across a set of workers who each update a portion of a record state of the world (SOW) delta publish
Providing highly-available messaging with multiple servers providing failover transaction log and replication

The scenarios above describe just a few of the more common scenarios in which AMPS is used. For messaging scenarios that aren’t described above, contact support@crankuptheamps.com for advice and guidance.