The Solace Java Real-Time Optimized (RTO) API (also referred to as solclientjni) is a low-latency Java Native Interface (JNI) wrapper for the C API. The API is specifically designed to provide high message throughput and low latency with the lowest CPU utilization possible. The API is a Java interface, via JNI, to the Solace C API, so many of the concepts will be familiar to developers that have worked with the C API. Developers using this API can achieve the low latency by avoiding all memory allocation during runtime within the Java RTO API. To achieve this, applications must take on some of the role of memory management in the application itself to avoid the need for garbage collection.

Message Exchange Patterns

The Java RTO API supports all common message exchange patterns.

  • Publish/Subscribe
  • Point to Point
  • Request/Reply


The Solace Java RTO API supports the following common API features.

  • Connection management to Solace message routers
  • Addition and removal of topic subscriptions
  • Sending and receiving messages Direct and Guaranteed messages
  • Extensive support for logging and customizing through property parameters
  • Request/reply messaging support
  • Session Transactions
  • SolCache Client API support
  • Queue browsing
  • Topic dispatch

The Solace Java RTO API does not currently support the following features.

  • Structured data types that do not rely on a specific architecture or programming language
  • XA Transactions