83 pointsby spetz4 hours ago10 comments
  • spetz4 hours ago
    Apache Iggy™ has officially graduated from the Apache Incubator and is now an Apache Software Foundation Top-Level Project (TLP)

    It’s been quite a journey, from a small Rust message-streaming experiment in 2023 to an independent Apache project with a growing community. And its biggest feature yet, being the Viewstamped Replication Revisited (VSR) clustering, is coming soon.

  • junon4 hours ago
    I believe spetz is on the project, so I'd like to ask:

    Is this a MQ implementation, or can this be used in place of e.g. something like protobufs and iroh/tonic? Does it have something akin to grants/capabilities/authorization? Does it have RPC? Can I have services speak a more privileged set of instructions/commands and clients needing auth to speak dumber/more high level administrative commands just like gRPC?

    Also, is the performance due to the (what I assume is custom) zero copy serialization?

    The landing page simply states it's essentially "fast messaging" but beyond that it's not entirely clear when I'd use this or what its features/limitations are.

    • spetz3 hours ago
      It's more like Kafka or Pulsar in terms of being the message streaming infrastructure (so an append-only log, not the message broker like, e.g., raw RabbitMQ). I think that the main docs page should give you a good understanding of how the data is stored/organized https://iggy.apache.org/docs/ - for example, on top of the topics, we also have "stream" which is just an extra hierarchy that can be used for something like multi-tenancy isolation or anything else depending on the use case. And yes, there's a built-in RBAC (read/manage particular streams, topics, servers, etc.). As for protocols, we have native support for TCP, QUIC, WebSocket (these 3 are stateful binary protocols), and HTTP as well.

      There are a bunch of things that sum up to the overall performance gains - using Rust, thread-per-core architecture + shared-nothing (think of Seastar), custom zero-copy serialization, io_uring for disk * network I/O, and VSR-based consensus (inspired by TigerBeetle) - we simply build all this stuff from the ground up to make the most out of modern hardware and Kernel features, with a custom protocol on top (but the Kafka proxy/gateway is also WiP). And there are also connectors (sink, source), benchmarking runtime, CLI and so on.

  • genxy43 minutes ago
    For those confused about what Iggy is, the post appears to be written for the Iggy community.

    Iggy is basically Kafka written in Rust that has yet to reach the distributed, clustered, fault tolerant stage. Looks cool for sure, but it has a ways to go.

    • spetz40 minutes ago
      Sort of, but anyone familiar with Kafka should feel like at home, although there a few subtle differences when it comes to the transport protocol, hierarchy etc. And VSR clustering is hopefully coming this week!
  • languagehacker4 hours ago
    I love my Italian Greyhounds so much, so this is great news to me.
    • spetz3 hours ago
      Awesome! You can find mine too in one of the older blog posts, hence the name :)
  • oulipo2 hours ago
    Will it integrate directly with MQTT? Or should I use a MQTT broker and pipe into Iggy?
    • spetz42 minutes ago
      There's an open PR to implement sink + source for MQTT https://github.com/apache/iggy/issues/3385

      Also, since we've been asked about this a lot, there's a high chance, that we might implement MQTT Gateway, just like we currently do for Kafka (proxy on top, as a separate runtime).

    • 0x457an hour ago
      Iggy is different kind of message queue. This is what you would use instead of Kafka. There is no sink or source for MQTT out of the box.
  • anony-1232 hours ago
    Why the website is looking AI slop?
    • anony-1232 hours ago
      Why this comment is being flagged?
  • fenestella4 hours ago
    [flagged]
  • whalesalad3 hours ago
    [flagged]
    • nozzlegear2 hours ago
      Because it used orange as an accent color? The docs are Astro Starlight with some tweaks to the CSS.
      • anony-1232 hours ago
        Docs looks good, but the landing page is having gradients, pills, badges which looks vibe coded AI slop :)
  • ramraj074 hours ago
    I always thought Im just not good enough to understand, hey Im just too dumb, surely there's people out there who understand what differentiates all these apache products! Nope never found one.
    • kitd3 hours ago
      Apache is just an umbrella organisation for managing open source software projects. There's nothing that links those projects otherwise.
    • hofo4 hours ago
      Differentiation from each other or from competitor projects?
    • otabdeveloper42 hours ago
      Don't worry about it, Apache is the hospice where software projects go to die.
      • 0x45739 minutes ago
        There are roughly 400 projects on that page; about 90 are in the attic, meaning formally retired. Another 25 are incubating, and some of those look like they’re already dead; nobody has checked the pulse and filled out the paperwork yet.

        A huge chunk of Apache is Java libraries.

        Some projects are just academia doing academia things; they graduate, the original people move on, and the project dies. Others are corporate donations, including the occasional “we don’t want to play with this anymore; maybe Apache can keep it alive” project.

        That being said, the incubator graduation rate is still roughly 75–80%.

        How useful or alive those graduates are five or ten years later is a different question.

        Saying Apache is where software go to die is just wrong.

      • skeeter20202 hours ago
        What a crock of shite. Of course there's going to be some dead one when you have this many, but there are also projects that are foundational and many exciting new ones too:

        https://projects.apache.org/projects.html

    • theplumber4 hours ago
      Do you understand the difference between computer devices?
  • hasanpiker3 hours ago
    Apache Pop when
    • spetz41 minutes ago
      > I am a passenger and I ride and I ride