![]() This impedes the rate of development of new features and new APIs and makes the quality of new features very dependent on the API being used.Ī key aspect of the Apache Kafka wireline is that consumers move sequentially through the messages in a given log, processing each in order. ![]() ![]() With a sophisticated API architecture, as new messaging features are added, significant changes are required in each API vs being implemented mostly in the broker. Recall that Apache Kafka APIs are sophisticated APIs: they need to interact with Zookeeper and many Apache Kafka brokers, determine what partitions of what topics are located where as this changes over time, consumers track where they are in the replay log, publishers track where to publish each message based on topic + key, etc. Note that Confluent does offer a MQTT Proxy as a one-way gateway as a workaround for Apache Kafka users. There are currently no APIs that are the same revision as the current broker release. This means that support, API consistency, quality and feature availability are dependent on the individual maintainer. This typically means that there is no ready-made integration with 3rd party products like ESBs, API gateways, JEE containers and the like.ĪPIs in other languages are available but these are outside of the Apache Kafka project and are each maintained by individuals or in some cases a company – not a community. This API is specific to Apache Kafka as opposed to being JMS compliant, for example, so applications must be coded to this Apache Kafka specification. No such API, or no releases of that AP APIĪpache Kafka provides only a Java API. Support is designated as follows:ĪPI maintained by a company or named group, not a single individual, with at least one release in the last 6 months.ĪPI exists, but maintained by an individual or having no releases in the last 6 months Below is the spectrum of open protocols supported.īelow is a summary comparison of application interface support between Solace PubSub+ and Apache Kafka. ![]() We embrace open protocols and APIs to simplify application integration and make applications more portable. You often need to support older application environments while moving to more modern environments like Node.js.Īs stated by the creators of Apache Kafka: “Only a couple of languages have very good client support because writing high performance Kafka clients is very challenging compared to clients for other systems because of its very general, flexible pub-sub model.” Given that your applications typically use many different languages and runtimes, you want to integrate 3rd party commercial and open source software in frameworks you don’t control, and you may want to connect to external mobile and IoT devices as part of your application. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |