Many high-volume information distribution systems (e.g. market data delivery and sensor networks) require message caching so subscribing applications can look up recent quote data, find the last value when they reconnect, or investigate recent activity.
Solace’s message caching solution, called SolCache, enables the storage of data sent as part of a high-performance messaging stream in memory for low latency retrieval of data. Access to this message caching capability is integrated into the Solace API, enabling sophisticated lookups and operation. For example, applications could request the last 1,000 messages for an instrument, or sensor data from the last 24 hours. This high-speed message caching supports requests for individual topics, or groups of topics.
Message Caching Capabilities
- High performance: A single instance of a Solace’s message cache supports up to 70,000 lookups per second and can cache 500,000 messages per second. (100 byte messages)
- Flexible deployment and scalability: Solace’s message caching solution can be deployed as an integrated service on a single appliance or distributed across servers to scale as your rates and topic space grows. The same cache request is used regardless of the deployment model, so a system can be rolled out with one instance and scaled up without affecting applications using the cache.
- Overlap handling: Solace’s message caching solution lets developers determine how to deal with data that arrives while a cache request is outstanding. The live data can fulfill the cache request, be delivered to the application after the cache response, or be delivered to the application immediately followed by the cache response when it arrives.
- Cascading Caching: When a client application requests a cached entry for an object from its local SolCache and this object is published from a remote location and not currently cached by the local SolCache, the local SolCache will automatically retrieve it from the remote SolCache and cache it, along with its updates locally, to service subsequent client requests.
- Incremental Updates: SolCache supports user plug-ins which allow messages to be interpreted before applying them to images stored in SolCache. For example, if a feed handler sends out delta updates to a security or book, a SolCache user plug-ins could process them and do something like overwrite the last bid or ask fields, or keep a cumulative value for trade volume.