5 ms·
Valkey is just the way to go. No real reasons to stay with Redis. Valkey is supported by multiple industry players and by the Linux Foundation.
by alanfranz 2y ago
Valkey is just the way to go. No real reasons to stay with Redis. Valkey is supported by multiple industry players and by the Linux Foundation.
- halfcat 2y agoHow does valkey compare with garnet? https://github.com/microsoft/garnet https://github.com/microsoft/garnet
- runako 2y agoHaven't used either, but Garnet's dependence on .NET runtimes is possibly going to hinder widespread adoption.
- lloydatkinson 2y agoYou mean the cross platform framework? That will hinder adoption? Or do you mean the “Micro$oft is evil” people that still refuse to believe, even when provided links, that .NET is open source? And can even build a single binary?
- internetter 2y agoI can't place it, but .NET just sets me off on a bad foot. I much prefer just a binary I can run and get on with my life
- yohannesk 2y agoCouldn’t you do that with self contained dotnet build?
- lloydatkinson 2y agoYou have literally fallen into the same thinking of the people I described. You've been able to build to a single binary for several years. Now you can even do it natively, so no JIT.
- neonsunset 2y agoFYI Garnet requires JIT but this is sort of irrelevant in Garnet's scenario as as frequently starting and killing your Redis server is the last thing you want to do. It can be self-contained in either case, and the happy path scenario will be using one of the pre-built docker images I linked in one of the sibling comments. The described issues are made up.
- vaidhy 2y agoThe fact that it requires additional dependencies that a lot of system administrators are not familiar with..
- lloydatkinson 2y agoI would be greately surprised if most of these were not already on Debian, Ubuntu, and the like. https://learn.microsoft.com/en-us/dotnet/core/install/linux-debian#dependencies https://learn.microsoft.com/en-us/dotnet/core/install/linux-... libc6 libgcc-s1 libgssapi-krb5-2 libicu72 libssl3 libstdc++6 zlib1g
- vaidhy 2y agoI meant .net runtime dependency which most people are not familiar with and there is not enough trust in MS as there is trust in say, apache foundation.
- ryanobjc 2y agoIt’s not that, it’s .NET is weird tech on Linux. You have to install a new and different runtime. Config files are xml and stored in different places? All sorts of crap. Vs just running a binary. So simple. People put up with Java for a while but it’s declining in popularity.
- yohannesk 2y agoIs there a language or tool with no runtime? Also Config files can be JSON. I find nothing weird when it comes to .NET on linux vs any other technology
- runako 2y agoThe Redis runtimes are colloquially referred to as "Linux" and do not have to be installed by the user.
- FireBeyond 2y agoI think you're really picking at nits. "apt install redis-server" on my server says that the following will be installed: - libjemalloc2 - liblzf1 - redis-tools Garnet requires .NET, so... apt install aspnetcore-runtime-8.0 Acting like Redis works "out of the box" while Garnet requires a whole other paradigm shift is disingenuous. I have no dog in the fight - I use macOS and I don't use Redis or Garnet.
- neonsunset 2y agoJust flag+downvote and move on, it's been 8 years already and it never changes. While on the topic of macOS, Swift Library Evolution ABI support is coming .NET for native integration with Swift (particularly for system APIs). I have not tried it yet but it's an interesting feature AFAIK no other language has, well, besides Swift itself.
- lloydatkinson 2y agoCategorically not true. You can do that if you wish, but you can also simply build it as a single binary. Why do you think otherwise? https://learn.microsoft.com/en-us/dotnet/core/deploying/single-file/overview?tabs=cli https://learn.microsoft.com/en-us/dotnet/core/deploying/sing... So simple.
- kobalsky 2y ago> Or do you mean the “Micro$oft is evil” people you know, I live in one of those countries that traded licenses for power. Microsoft demanded a software self-audit from our company (we use Linux on 100% of our computers). When we refused they reminded us that it was mandatory, otherwise they would send an auditor who will access our premises with a judge's order (with cops and everything) to do the audit and then bill us for their time, even if they don't find computers running windows. are you telling me that I'm an extremist or something for avoiding MS' stuff when perfectly fine alternatives exists?
- runako 2y agoThis looks like a troll response, but I will respond earnestly anyway in the spirit of open discussion. What I mean is that if you many (most?) web applications run on Linux. There are a set of applications and libraries with which Linux users and admins are broadly familiar. In general, .NET is not one of those. And that's fine! .NET is obviously very successful and runs a huge percentage of the biggest sites on the Internet. BUT if you're talking about replacing Redis, a Linux stalwart, the unfamiliar runtime is a thing. Besides, Redis in particular does not require special dependencies to be installed. (Out of curiosity, I clicked from the Garnet page to the .NET install instructions. 7 clicks deep into the MS documentation are the relevant apt-get commands. Starting from redis.io is almost as bad, but because Redis is already standard, nobody would start there.)
- neonsunset 2y agoI can assure you it isn't. This is normal reaction to hearing time and time again the same kind of misinformed sentiment that comes with covert or overt hostility when .NET is mentioned, and attempts to provide details to help participants to update their priors are responded to with demagogy. At some point, it becomes one interaction too many that is bound to make people snap. I don't think this kind of discourse belongs to HN in the first place, as it is driven by tribalistic behavior which is just shameful.
- jauntywundrkind 2y agoI can assure you, you are wrong. Most Linux devs and admins don't know lick all about best practices/maintenance/care-amd-feeding of a .NET runtime. I get the pain at seeing a snap judgement against a valid virtual machine. But we just don't have the wide scale practice of running that virtual machine, like we do node or python or jvm or rails. .NET has long been a very distant satellite practiced by people who are not like us, who don't run Linux. It's no longer a hard barrier to cross (running .net on Linux)! Many people do! Yay!! But it still feels like a separate world from a separate place & circumstance.
- neonsunset 2y ago
- neonsunset 2y agoHere we go again, heh. What drives these replies? It's by far one of the easier and simpler dependencies as far as "involved runtime" packages go. That is - easier to deal with than various Python versions, OpenJDK or even Node.js. Garnet also has pre-built docker images for easy deployment: https://github.com/orgs/microsoft/packages?repo_name=garnet https://github.com/orgs/microsoft/packages?repo_name=garnet I find it a bit ironic that the complaints are for what is effectively the simplest process of building the entire thing from source which is distributed under MIT (because that's what dotnet run does the first time you invoke it after cloning the repo), sometimes you just can't win.
- chris_pie 2y agoGarnet doesn't support Lua scripting, which is quite useful for custom atomic operations.
- nurettin 2y agoI would gladly switch to a valkey redis compatibility layer if it supports xstreams.