6 ms·
Show HN: BusterMQ, Thread-per-core NATS server in Zig with io_uring
- spicypixel 9mo agoYou should at least try and align the ascii flowchart in the readme on the repo. One day Claude will do it correctly but today is not that day.
- maxpert 9mo agoI did a similar thing few days back just not with NATS protocol (Made it pure websocket based), and with rust. Couple of questions: - Where did you get the machine to test your server on? - Why did you end up going with zig?
- simlevesque 9mo agoAnyone can buy a 9950x on Amazon or any tech store, it's consumer hardware.
- littlestymaar 9mo agoGiven that this entire project is a single[1] vibe-coded commit, I really doubt the author bothered buying hardware to test it. [1]: https://github.com/bustermq/bustermq/commits/master/ https://github.com/bustermq/bustermq/commits/master/
- steeve 9mo ago[flagged]
- littlestymaar 9mo agoSure, the author just happened to one-shot a project and a landing page on new year's eve. And their writing style is just coincidentally very similar to Claude's. Who's going to buy that?
- jbaptiste 9mo agoIts an extract of two weeks of work. And yes Claude did the website and rewrote my code that was absolutely without comments and a gigantic mess. It's an extract of the fourth attempt actually. Src4/ was the original folder. But my goal my to test the architecture applied to nats not to say I've done it without ai?
- pezezin 9mo agoThe repo being a single commit doesn't mean it's AI. It is quite common to first develop on a private repo and then clean up the commit history for the first public release.
- whilenot-dev 9mo agoYou and OP both work for the same "High Performance AI Inference" company, you might want to disclose that. EDIT: and while you're at it, you might also want to work on your attitude. "you idiot", "get lost" and "you need to touch grass" are not helping any HN discussions
- steeve 9mo agosure, i hereby disclose that he left in September i already said in another reply that i knew him personally
- whilenot-dev 9mo agoWell, in that case I'm curious... Why did you think hijacking OP's stance of "Claude did rewrote lots of my original messy code" with your own opposing position of "the project itself is not AI", and getting quite offensive about it, would benefit any discussion about this 13h old project? It's a personal project of your dear ex-colleague, mind you!
- steeve 9mo agobecause he was been sending me updates about it for the last two weeks because we've been discussing architecture, optimisations and benchmarks because it's not a 13h old project
- deleted 9mo ago[deleted]
- speedgoose 9mo agoWho cares whether it’s vibe coded ? As long as it’s good and well maintained over time of course. Maybe there is a niche market for artisanal software engineering where real humans make holes in punchcards, but I would not bet.
- littlestymaar 9mo ago> Who cares whether it’s vibe coded ? As long as it’s good and well maintained over time of course Maybe 12 hours after the first commit is a bit early to be confident about that… > Maybe there is a niche market for artisanal software engineering where real humans make holes in punchcards, but I would not bet Or maybe there exist a world between punchcards and evening AI slop “projects”, who knows.
- steeve 9mo agohe’s been working on it for 2 weeks, as he said somewhere else
- littlestymaar 9mo agoAnd he later said that he doesn't intent to maintain it: > And as what it is, not a nats replacement, certainly dont have the time to maintain that this way
- phplovesong 9mo ago[flagged]
- jbaptiste 9mo agoMy personal rig and Zig because I worked with it for a little more than a year. It was a fun test to do.
- dorianniemiec 9mo agoI'm also building a network server with thread-per-core and io_uring, except it's a web server, it's written in Rust, and io_uring is provided by a fork of Monoio runtime (I forked it to make it work with Windows and FreeBSD).
- mertleee 9mo ago[dead]
- jpgvm 9mo agoUpvote for Bazel. I think these days I place a lot more value on how well an ecosystem slots into Bazel/friends because monorepos are increasingly more useful and relevant. So nice to see there are good rules for Zig and that folks are using them. Also ironically I think starting with Bazel/Buck/whatever your poison of choice is almost always a good move even if people tell you it's overkill. The easiest time to do it as at the beginning, all times after that is too hard and the marginal cost of building with it from the start is minimal.
- owyn 9mo agoDownvote for this web site is a horror movie billboard and zig already has a build system which is zig and that's one of it's neat features.
- fellowmartian 9mo agoPeople are free to knock themselves out with Bazel if they’re into that kind of masochism, but having it as the ONLY way to build your OSS project is a big no.
- simlevesque 9mo agoYeah I'm never touching Bazel again. I value my sanity.
- steeve 9mo agowell, bazel is by far the most reliable one so I'm not sure why you're complaining
- synalx 9mo agoThe problem with "the language tooling is already a build system" is that cross-language dependency chains are a thing. The moment you need a Rust or Zig file to be regenerated and recompiled when a JSON schema or .proto file is updated, you're outside what most of those language-specific toolchains can support. This is where Bazel absolutely shines.
- PaywallBuster 9mo agoComparison/benchmark to other alternatives?
- littlestymaar 9mo ago[flagged]
- jbaptiste 9mo agoOh god no. Just having fun with zig and being a little over enthusiast I guess. I'm a big fan of nats, and really wanted to see how far you can push the idea if you do it differently. I was not expecting that tbh but, hpn too!
- steeve 9mo agonobody cares about the website being done with AI because the code of the project itself is not AI you need to touch grass
- girvo 9mo agoThe code of the project absolutely does look like it was done with AI lol, it’s a single commit…
- steeve 9mo ago[flagged]
- NlightNFotis 9mo agoI’d invite you to reconsider the kind of language you’re using to interact with other forum members here. Dropping to profanities is not conducive to maintaining an environment that’s facilitating dialogue between its members. I’ve seen you at least twice call other members here “you idiot”, “get lost”. Etc. Have a hard think as to whether you could rephrase that without the name calling, and if at worse you can’t manage to, you can always ask an LLM to do it for you.
- steeve 9mo agothe way he came barging through the door doesn’t invite sympathy
- BiteCode_dev 9mo agoDoes it have a similar system to Jetstream? If yes, does it address the reliability issues Jetstream has been criticized about lately?
- jbaptiste 9mo agoAbsolutely not and will never have.
- phplovesong 9mo ago[flagged]
- steeve 9mo ago[flagged]
- ozgrakkurt 9mo agoWho would believe someone that writes something like this online?
- phplovesong 9mo agoNot a single serious dev would use crap like this near something that resembles production. Why even bother sharing a vibed spaghetti ball like this?
- littlestymaar 9mo agoAnd it's gone…
- ngrilly 9mo agoWhy use Basel instead of Zig build tools, as it’s all written in Zig anyway?
- ahoka 9mo agoThat was in the prompt.
- phplovesong 9mo ago[flagged]
- neomantra 9mo agoUnusual tones all around in the thread here. My initial observations before reading the comments here: * "wow, OSS projects are starting to have some pretty wild landing pages, guess it's not just AI logos at the top of the README anymore" * "wow, all in one commit. was it vibe-one-shotted, curated private work that was squashed, or something in between" * "wow, Zig is kind easy to read although I really don't want to learn another language in 2026 although I already started learning some to use libghostty" * "wow, is Zig really this much performant than Golang at the tails" * "weird it uses Bazel, doesn't Zig have it's own build system like Golang" * "so who is the author? I see they made an GitHub org for this. Are they going to keep doing stuff after the commit and should I keep this in my messaging queue neurons? Is this some company or person I should follow" * "the README has a misalignment, do I PR that?" * "oh cool, it lets you tune memory and the dispatcher" --- I never thought of exactly how it manifested, except about the single commit. I have started "vibe coding" much more as the capabilities really improved in the last few months, so that isn't intrinsically a trash approach. But the "who" and the "how" and the "why" do matter, in terms of whether one should look at it for education or infotainment or as a potential tool. Disclosure of the intention and method would be courteous to the community when we create and share these things. Otherwise we'll all have high cognitive burden with the amount of projects we'll be seeing in 2026!
- jbaptiste 9mo agoThat’s fair, I should have framed it more clearly upfront. Thanks for the feedback. I was excited about the results. The intent was to talk about performance and architecture, not to imply this was a quick or effortless project. There’s been a lot of iteration and experimentation behind it, and I should have communicated that context better as well as the use of AI for the help.
- neomantra 9mo agoI totally get it and received the offering. =) Love seeing more use of io_uring too and interesting to see how that's done in Zig. Happy New Year: All the best on this and other projects.
- 9mo ago
- smarx007 9mo agoI am assuming the message durability guarantees lean towards YOLO rather than ACID? See also https://news.ycombinator.com/item?id=46196105 https://news.ycombinator.com/item?id=46196105
- codys 9mo ago> I am assuming the message durability guarantees lean towards YOLO rather than ACID? "Core" nats doesn't have durability. Nats jetstream is the api built on top of nats that in the main nats-server impl provides durability. Jepsen tested Nats Jetstream. Also from your link: > Regular NATS streams offer only best-effort delivery, but a subsystem, called JetStream, guarantees messages are delivered at least once. The project linked here does not implement the nats jetstream api, just normal nats. So yes, it seems its same (documented, understood) "yolo" as normal nats.
- samgranieri 9mo agoThis looks fairly cool. If I had the production need for this, I’d definitely consider this. I paired with Claude and simply added nats.c to the zig buildup system for my zig project at work. It works like a charm.
- mindslight 9mo agoPutting aside the whole presenting slop-coded things as cromulent projects, is anyone else tired of this constant myopic focus on performance? I don't need a message queue that can "saturate the bandwidth of the next generation of hardware". Rather I want middleware that is easy to use - simple to set up (not hundreds of configuration knobs for optimizing performance), reliable (can run clustered on a few instances on its own, not using k666s or anything, and handle instances going away for a few weeks if one dies or I'm reconfiguring things), has good semantics that won't encourage Heisenbugs down the line (eg look at MQTT's actual semantics versus how it's incorrectly used by Home Assistant generic MQTT endpoints), and so on. I get that there's no surveillance industry money backing projects aimed at individual users, but it's still pretty sad that individuals creating projects in their spare time are still focusing on features desired by the surveillance industry.
- hhhhhggg 9mo agojepsen on nats still gives me anxiety
- snehesht 9mo agoWow, the whole thing (website, github repo) is down.