Over a million developers have joined DZone.

Kafka Possibly Moving to Java CRC, Akka Suggested

· Java Zone

Bitbucket is for the code that takes us to Mars, decodes the human genome, or drives your next car. What will your code do? Get started with Bitbucket today, it's free.

If you haven't heard of Kafka, a super-fast distributed message queue from LinkedIn, you probably ought to look into it, and its heavily involved Apache incubator community.

Not to go too far into minutiae, but just today there was some talk about moving to a Java-based CRC32.  Kafka is written in Scala, but the good thing is that if they used a Java CRC it wouldn't need to be modified.  

One developer also suggested using Akka Actors "as they can provide the necessary ordering guarantees, do not require thread pool tuning, and should be easy to reason about. The performance would likely be better than producer/consumer thread chains too, since chained actors often run in the same thread and avoid processor cache thrashing."

Another community member had this to say:
Akka seems a bit overkill for this (although it does have some nice properties). It would be interesting to refactor the threading in Kafka with Akka and see what kind of performance differences there are. -Kafka project page

Kafka is definitely worth checking out and getting involved with if you are a Java or Scala developer.  If not Kafka, maybe you should join another open source project.  It's getting close to the end of the year so it's time to set some new goals!  Or not .

Bitbucket is the Git solution for professional teams who code with a purpose, not just as a hobby. Get started today, it's free.

Topics:

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}