When to use Solace, Kafka, or Confluent

Confluent adds key features to Apache Kafka to address Kafka’s shortcomings in certain use cases. Keeping that in mind, here’s a high-level look at how each performs:

Legend: Great Good Other

Legend:
Great Good Other

KafkaConfluentSolace
IoT
  • Not suitable for large scale 
  • Needs to be fronted by other MQTT brokers
  • Good sensor data consumption
  • Great sensor data consumption and command and control
Multi-Cloud
  • Static routing between clouds
  • Poor reliability 
  • Complex remote client setup
  • Static routing between clouds
  • Complex remote client setup
  • Good IaaS services  integration
  • Poor throughput versus reliable performance
  • Great multi-cloud dynamic event routing
  • No remote client setup required
  • Great IaaS services integration
  • Good throughput versus reliable performance
Microservices
  • Limited exchange patterns 
  • Java and other community driven languages
  • Many uses not truly suited for Kafka batching
  • Limited exchange patterns
  • Good language support
  • Many uses not truly suited for Kafka batching
  • Great breadth of  languages, protocols, message exchange patterns
  • Messaging and streaming
  • Advanced event mesh
Digital 
Transformation
  • Good CDC tools
  • Less flexible multi-site hybrid cloud solution
  • Good CDC tools
  • Great when thinking of bi-model development in combination with hybrid cloud
Stream Processing
  • Core product use case
  • Great core product use case
  • KSQL defines well-used patterns
  • Messaging and streaming with good 3rd party stream processor APIs integrated
Low Latency
  • Batch architecture limits performance
  • Kafka batch architecture limits applicability
  • Great core product use case
Analytics
  • Great core product use case
  • Great core product use case
  • Nothing added
  • Good when thinking of bi-model development in combination with hybrid cloud
Transactional
Workflows
  • No individual message acknowledgement

  • Can use Kstreams and transactions which adds complexity but you're then locked-in to Confluent license agreement for use as a service (I.e., Amazon/Azure can't do it)
  • Individual message ack out of the box (i.e., Need to act upon a ticket purchase)

See How Solace and Kafka Differ

How Solace Platform Compares to the Capabilities Confluent Adds to Kafka

ConfluentSolace
Schema Registry
  • Supports compact wire formats
  • No lifecycle management or understanding of app interactions/dependencies
  • Solace Event Portal enables design, discovery and management of events across brokers and environments
  • Does not have a runtime schema registry
Connectors
  • Many connectors do not provide source code
  • Must be certified to be supported by Confluent
  • Broker integrated connector or source/sink connectors as source code
  • Native transparent protocol and transport translations
Clients
  • Supports other clients based on their C library for C++, Python and Go.
  • Other language or wire format is only supported via connectors
  • Supports many client languages and transparent interoperability with multiple open source terminated transports and wire formats
REST Proxy
  • Allows retrieval of broker metadata and limited consumer/producer proxying between REST and native Kafka producers and consumers
  • Supports REST as a first-class producer and consumer
  • Full request/reply MEP
MQTT Proxy
  • Terminates MQTT producers so persistent MQTT producer messages can be stored in the Kafka topic
  • Can’t send messages to MQTT client through this proxy

  • Natively supports full MQTT broker for producers and consumers
  • MQTT persistent messages are stored in the same Solace store
  • Any other Solace supported API or protocol can easily access MQTT messages
KSQL
  • Proprietary SQL interface engine to Kafka streaming so consumers can get messages from topic and process SQL statement to move message to another topic
  • Many of KSQL’s capabilities are natively available via topic hierarchies, topic-to-queue bridging and SQL selector statements
Replicator
  • Simple topic replicator software that allows primitive and limited DR and hybrid cloud capabilities for integration with Confluent Cloud and/or multiple broker clusters
  • Slightly more robust than Apache MirrorMaker
  • Native enterprise-grade DR
  • Specialized routing protocols intelligently move data in a hybrid cloud environment
Cluster Linking
  • More advanced topic replicator to facilitate multi-datacenter, multi-region, and hybrid cloud deployments
  • It provides data distribution and HA/DR capabilities between multiple clusters
  • Solace solves multi-cloud data distribution using sophisticated dynamic bridges between broker clusters
  • Native enterprise-grade DR
  • These capabilities are available as standard offering, without additional components
Available Clouds
  • Available in most regions of Amazon, Google, and Azure, with additional regions available upon request
  • Available in most regions of Amazon, Google, and Azure, Huawei and Alibaba, with additional regions available upon request

Managing and Governing Events and Streams

confluent stream

  • Confluent Kafka brokers only
  • Data/schema management and Catalog
  • Schema Validation – Confluent Cloud/Platform
  • Operating data flows – Confluent Cloud ONLY
  • Tracking lineage – Confluent Cloud ONLY
  • Supports all Kafka Distributions (Confluent, Apache, MSK) and messaging systems (Solace)
  • Event discovery to understand your existing event-driven assets (schemas, events, applications)
  • Event Dependency Visualization at Design and Runtime
  • Lifecycle Management with versioning and promotions
  • Exposure of Event API Products for sharing across lines of business and organizations
  • Coming Soon: Audit your design vs what was built/deployed, be alerted to design deviations

Still have questions?

Get in Touch