10 ms·
Microsoft made one called Garnet, I wouldn't say its a fork though, its basically compatible with Redis and implemented mostly in C#. It supports the RESP wire
by giancarlostoro 2y ago
Microsoft made one called Garnet, I wouldn't say its a fork though, its basically compatible with Redis and implemented mostly in C#. It supports the RESP wire protocol from Redis for ease of compatibility.
https://github.com/microsoft/garnet https://github.com/microsoft/garnet
- cess11 2y agoYou do see how that's even worse, right?
- jayofdoom 2y agoI don't see how it's worse? https://github.com/microsoft/garnet/blob/main/LICENSE https://github.com/microsoft/garnet/blob/main/LICENSE It's MIT licensed?
- Alupis 2y agoMicrosoft has a habit of "fake" open source. Particularly on Github. By "fake", I mean Microsoft largely treats their Open Source codebases like they are closed-source, in-house proprietary codebases that they happen to let members of the public look at. They'll accept a PR once in a while, but mostly it appears Issues and PR's are used as a free alternative to UserVoice. Every decision is made behind closed doors (probably a MS Teams call actually), and you'll notice how top-heavy their staff is on these projects (half a dozen employees with "Manager" in their title on any given repo). Beggars can't be choosers, and I'm glad they are dipping their toes into the FOSS water... but I don't really get FOSS vibes from their projects on Github.
- neonsunset 2y agoGarnet has a discord server and has been actively accepting community PRs, so I don’t know what kind of nonsense you are on about. What is it with .NET that compels you to lie? Also FOSS and open contribution are different things, as sibling comment notes.
- deleted 2y ago[deleted]
- cess11 2y agoMIT license is not FOSS, it's OSS at best.
- neonsunset 2y agoMIT is one of the least restrictive licenses. If you think otherwise, I suggest checking if there's any aluminium foil on your head.
- Nab443 2y agoAs a end user, I find it quite restrictive. There might be some software I won't be able to fork/modify because they were MIT. I'm not the owner of the software anymore.
- neonsunset 2y ago"The MIT License (MIT) Copyright © 2025 <copyright holders> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons..." https://mit-license.org https://mit-license.org
- pabs3 2y agoThe MIT license always allows you to fork/modify the project. You wouldn't be the copyright owner of the existing code in your fork, but you could be the owner of the project, and the copyright owner of any new code you add.
- cess11 2y agoFree software is licensed in a way that protects your freedom. MIT license does not. Are you actually unaware of this? If so, why? Is it age or have you been sheltered somehow?
- KolmogorovComp 2y agoYou’re confusing open source and open to contribution. Is SQLite not open-source?
- tough 2y agoDoes SQLite try to embrace, extend, and extinguish their competitors?
- atonse 2y agoEmbrace, Extend, Extinguish is from an era where Open Source wasn't the default for infrastructure. I don't know how you can extinguish something that's MIT licensed and has a million copies around the world.
- tough 2y agoI've read at least several stories from this era like AppGet's https://medium.com/@keivan/the-day-appget-died-e9a5c96c8b22 https://medium.com/@keivan/the-day-appget-died-e9a5c96c8b22 I wouldn't trust Microsoft near my open source code base in 3 centuries They can extinguish it by just stealing all the code, and using their bigger marketplace advantage to become the defacto standard.
- 2y ago
- munchler 2y agoHow is that "fake"? There's no requirement that an open source project take contributions from outsiders at all.
- justin66 2y agoThis notion that open source projects aren't really open source unless they welcome all contributions is one of the dumber ideas in the world.
- glenngillen 2y agoHaving worked a few places that have major open source projects, it was eye opening to see how pervasive this seems to have become. It feels like over my lifetime I've watched the value/expectations/demands/definition of OSS shift from "source is available, and I can make changes to my own copy/fork of of it if required" to "source is available, and I will demand you make changes to it for me"
- Alupis 2y ago> source is available, and I will demand you make changes to it for me There seems to be a disconnect here. I agree, demanding someone else make changes for you is in poor taste. The issue is, some of these projects advertise themselves as being open source while having no meaningful way to contribute changes back upstream - ie. the spirit of open source. If I use your program for free, and encounter a bug, I should be able to fix it and contribute that back upstream so everyone benefits. That's my way of "paying back" and helping the community. Projects that reject contributions, or make contributing difficult are not in the spirit of open source, even if they are technically open source via their license. That's what I call "fake" open source - you want the positive image of being Open Source only.
- toast0 2y ago> There seems to be a disconnect here. I agree, demanding someone else make changes for you is in poor taste. The issue is, some of these projects advertise themselves as being open source while having no meaningful way to contribute changes back upstream - ie. the spirit of open source. I mean, you're not demanding someone else make the changes. You're only demanding that they engage and build a community around their project and all that entails. As long as the license is reasonable, anybody else could pick up the project and do the community building around it. Apache HTTP Server developed around community patches to NCSA httpd. I don't think hitch (from the people who brought you Varnish) is well know, but it started as stud with community patches. If something like this takes off, the originator will either start taking the community patches too, or not; it's their choice. In the meantime, as a user, I get the benefit of whatever changes the origin provides and I can patch it as I want, and fix up problems that I see. That works for code dump open source and community open source,.
- dharmab 2y agoI make an open source, MIT licensed piece of software. I don't accept unsolicited contributions, but I document that people are free to fork the code and provide instructions on how to develop, test and build on your machine. Am I "fake open source"?
- Alupis 2y agoIn my opinion, the spirit of open source goes beyond just tossing code over a wall for people to look at. In my opinion, it means accepting engagement from your users, their inputs and their contributions when/where warranted. In my opinion, for something to be truly open source, I should be able to fix a bug I ran into, or implement a feature from the backlog and contribute it back upstream. If upstream is just going to ignore my contribution, pretend it doesn't exist, or reject it just because - then that codebase is just pretending to be open source. That's not to say you are required to accept all contributions - I'm saying you should be open to contributions that A) save you time B) enhance the codebase or C) fix confirmed bugs. In Microsoft's case - I don't see a lot of that going on. I see lots of Issues (bug reports), some PR's, but mostly opaque decision making, and complete silence on things the Corporate side of Microsoft doesn't want to comment on yet. Which is the beef - it's a corporate project run like it's proprietary but you can go look at the code. Again, better than nothing, but it's not really what I consider true open source.
- neongreen 2y agoI have the same feeling. I got used to infrastructure being run as a democracy, not merely “source available under GPL/BSD/MIT”. (It’s a big thing to want, sure, but I don’t mind wanting big things.)
- krab 2y agoWow, that's stretching it a bit, isn't it? I'd say the spirit of open source is that others are free to modify the code and that's it. This requires a good license, the possibility to fork, some documentation and a way to build the project yourself. But why would accepting contributions be required?
- bigstrat2003 2y agoOpen source does not mean you accept contributions from others. It means that the source code is available, and that people are free to take it and modify it themselves. You are using a definition which is... not exactly incorrect, because definitions are what they are, but certainly not what everyone else uses.
- ipaddr 2y agoWhat stops them from doing the exact same thing
- deleted 2y ago[deleted]
- KomoD 2y agoI don't, would you like to explain?
- cess11 2y agoIt's controlled by an even larger and much, much nastier corporation.
- avinassh 2y agoGarnet fascinates me. Their benchmarks even claim that it is better than Redis and also Dragonfly. Are there any papers or write ups explaining what makes Garnet fast? (I do know its based on FASTER)
- reconditerose 2y agoThe tl;dr is it's just a lockless hashmap attached to a TCP server with a log. Simple Get/Set operations are highly optimized, so with high batching they are able to efficiently fetch a lot of data efficiently. The architectures scales very well when you add threads and data access that is uniform. It struggles a bit on certain types of workloads like hot keys, think heavy hitting a single sorted set. It's a cool architecture.
- arghwhat 2y agoThat's... Pretty much exactly what you'd expect from a KV store. It's a hashmap on the network.
- whizzter 2y agoThe difference is that Redis is single-threaded, the value proposition of Redis was/is a fast (in-memory) simple (single-threaded) server to serve things so much faster than a traditional DB. It was a perfect fit and became popular with the Ruby/Rails community,etc since those environments combined with traditional SQL servers are slogs compared to what a fast server like Redis could do. As good as Redis is, modern computers with multiple cores potentially leaves a lot of performance on the table. Garnet seems to be a well designed multithread KV-store (though sadly the benchmark page doesn't list benchmark for more complex objects even if the simple cases looks good).
- arghwhat 2y agoI feel like most of the obsession over Redis came from old school cgi-esque server side apps that couldn't easily maintain state themselves... Nowadays your webapp is often a persistent, multi-threaded web server where you can cache whatever temporary state you want far more efficiently than reaching out to a KV store. Using postgres and caching common results becomes a non-issue even at scale. The main area where a super fast KV store shines is when you need to share a very large number of keys, where many servers only need to access a random subset and isn't interested in maintaining the full set and getting updates on a bus, where the values often change and needs to be revalidated so caching is ineffective, and where persistence is not needed so a database doesn't matter and a lighter KV store is acceptable.
- neonsunset 2y agoYup, it’s a complete reimplementation in pure C#. It’s built on top of FASTER KV / Tsavorite project from MSR.
- gschizas 2y agoNice. I've been using Memurai (https://www.memurai.com/ https://www.memurai.com/) for development on Windows (native, no WSL or Docker - for reasons), but this looks much better. EDIT: Weird that being a program from Microsoft (well, it's Microsoft Research, so that probably explains it?) it has no installer and doesn't run as a service on its own.
- yyyk 2y agoThe readytorun zip includes a service exe, it does need 'sc create binpath= ' etc. to be ran as a service.
- ahartmetz 2y agoConventional wisdom from 10 years ago on HN is that Microsoft Research just pays some top researchers (with commercially interesting, err, interests) to keep doing their thing. I wouldn't distrust anyone from there based on their employer. That is from someone who doesn't trust MSFT very far.
- gschizas 2y agoOh, don't get me wrong, I don't distrust them, it's just that some projects that come out of Microsoft Research are more rough around the edges!
- rs999gti 2y agoWow. First time hearing about Garnet. MS should package and deploy it as a service in the Azure SAAS offerings.