近日,知名开源项目 Redis 宣布修改开源协议,从原来的「BSD 3-Clause 开源协议」改成「RSALv2 和 SSPLv1 双重许可证」。新的许可证主要是限制托管 Redis 产品的云服务商,比如 Redis 云数据库等,不能继续免费使用 Redis 最新的源代码。

我感觉这个改动对于大多数个人开发者来说影响不大,但有专业人士表示新的 RSALv2 和 SSPLv1 并不属于开源协议,所以网上一直有 Redis 不再开源之类的言论,在生存面前谁都有选择的权利,而且市面上兼容 Redis API 的开源内存数据库挺多的,后面我会逐一介绍。

说回上周的热门开源项目,霸榜一周的爬虫项目 MediaCrawler 的作者因担心不必要的麻烦删库了,那就用另外一款视频下载工具 lux 顶上。上期我分享了 FastAPI 的全栈项目模板,这期来个 Java 的 ruoyi-vue-pro 再次助力 Web 应用开发。话说,微软最近在 GitHub 上很活跃,除了最近开源的 Redis 替代品 Garnet,还有 K8s 网络可观测平台 retina 也不错。

最后,来一份前端面试 React 高频问题和答案,虽然之前的“金三银四”变成了现在的“苟住”,但还是祝愿大家都能找到自己喜欢、高薪的工作。

  • 本文目录

    • 1. 开源新闻

      • 1.1 Redis 的开源替代品
    • 2. 开源热搜项目
      • 2.1 Go 写的视频下载器:lux
      • 2.2 基于 Spring Boot 的全栈快开平台:ruoyi-vue-pro
      • 2.3 K8s 网络可观测平台:retina
      • 2.4 自建照片和视频管理平台:Immich
      • 2.5 计算机视觉 AI 工具库:supervision
    • 3. HelloGitHub 热评
      • 3.1 点亮日志文件的命令行工具
      • 3.2 前端面试 React 高频问题和答案
    • 4. 往期回顾

1. 开源新闻

1.1 Redis 的开源替代品

随着 Redis 修改开源协议,让使用 Redis 的云服务厂商和个人开发者多了一些顾虑,担心 Redis 不再是长久之计。

所以,下面我将介绍 3 款可替代 Redis 的开源项目:Dragonfly、KeyDB、Garnet,它们都兼容 Redis API 可实现平滑替换。

Dragonfly

主语言:C++Star:23k

它与当下最流行的两款内存数据库 Redis 和 Memcached 的 API 完全兼容,所以无需修改代码即可完成迁移。性能上更是爆炸,官方表示单实例可支持数百万量级的 QPS,而且吞吐量是 Redis 的 25 倍,并可以应对 TB 级别的内存数据集。

GitHub 地址:https://github.com/dragonflydb/dragonfly

KeyDB

主语言:C++Star:9.6k

该项目是由 Snapchat 开源的支持多线程的 Redis,它具有高性能、更高的吞吐量、完全兼容 Redis 协议等特点。有了多线程就可以放心大胆地执行 KEYS 和 SCAN 命令,不用再担心阻塞 Redis 了。

GitHub 地址:https://github.com/Snapchat/KeyDB

Garnet

主语言:C#Star:6.4k

这是由微软用 C# 开发的一款高性能分布式缓存系统,兼容各种编程语言的 Redis 客户端。性能方面相较于 Redis 具有更高的吞吐量、更少的成本和更低的延迟,支持 List、有序集合、HyperLogLog、Bitmap 等数据结构,以及集群模式、事务性存储过程、故障转移等功能。

GitHub 地址:https://github.com/microsoft/garnet

2. 开源热搜项目

2.1 Go 写的视频下载器:lux

主语言:GoStar:24k周增长:570

这是一个国人用 Go 写的简单、快速的视频下载工具,它安装简单、使用方便,一条命令即可下载视频,支持国内外主流的视频网站。

GitHub 地址→https://github.com/iawia002/lux

2.2 基于 Spring Boot 的全栈快开平台:ruoyi-vue-pro

主语言:JavaStar:23k周增长:590

该项目是一个基于 Vue.js 和 Spring Boot 的前后端分离的快速开发平台,提供了精简和完整版,精简版仅包括系统功能、基础设施的功能,完整版则包含会员中心、数据报表、工作流程、商城系统、微信公众号、CRM 等功能,开发者可根据需求选择对应版本,快速起项目或进行二次开发。项目作者承诺该项目代码全部开源,永远不会有商业版!

GitHub 地址→https://github.com/YunaiV/ruoyi-vue-pro

2.3 K8s 网络可观测平台:retina

主语言:GoStar:1.9k周增长:1.7k

这是由微软开源的基于 eBPF 的云原生容器网络可观测性平台,支持 Linxu、Windows 等多种操作系统。它提供了一个集中查看、监控、分析应用和网络运行状况的中心平台,能够将收集的网络可观测性数据发送到 Prometheus 进行可视化,适用于调试 Pod 无法互连的问题、监控网络健康状况、收集遥测数据等场景。

GitHub 地址→https://github.com/microsoft/retina

2.4 自建照片和视频管理平台:Immich

主语言:TypeScriptStar:28k

这是一个开源的自托管照片和视频的备份解决方案,当手机存储空间被照片和视频占满却又不舍得删,这个时候虽然有云存储服务但价格却让人望而却步,那就自己动手轻松搭建个人媒体库吧。该项目就是一个免费的备份手机里照片和视频的解决方案,提供了多客户端、自动备份、多用户、共享相册、实时查看照片等功能,既免费又安全还能保护个人隐私。

GitHub 地址→https://github.com/immich-app/immich

2.5 计算机视觉 AI 工具库:supervision

主语言:PythonStar:12k周增长:2k

该项目简化了对象检测、分类、标注、跟踪等计算机视觉的开发流程。开发者仅需加载数据集和模型,就能轻松实现对图像和视频进行检测、统计某区域的被检测数量等操作。

import cv2
import supervision as sv
from ultralytics import YOLO image = cv2.imread(...)
model = YOLO('yolov8s.pt')
result = model(image)[0]
detections = sv.Detections.from_ultralytics(result) len(detections)
# 5

GitHub 地址→https://github.com/roboflow/supervision

3. HelloGitHub 热评

在这个章节,将会分享下本周 HelloGitHub 网站上的热门开源项目,欢迎与我们分享你上手这些开源项目后的使用体验。

3.1 点亮日志文件的命令行工具

主语言:Python

这是一个用于查看、追踪、合并和搜索,日志/JSON 长文件的命令行工具。它提供了高亮显示和实时追踪日志的功能,支持快速打开 GB 级的文件,并能根据时间戳自动合并日志文件。

项目详情→https://hellogithub.com/repository/dd740029a8d54a0fa11dcd2fb0a226cb

3.2 前端面试 React 高频问题和答案

主语言:Other

该项目涵盖了一系列 React 相关的面试问题和答案,内容涉及基础知识、组件、状态管理、生命周期以及性能优化等方面。

项目详情→https://hellogithub.com/repository/4d8c1c8eee0f4eb6ad79857563f1d6cb

3. 往期回顾

往期回顾:

以上为本周的「GitHub 热点速递」如果你发现其他好玩、实用的 GitHub 项目,就来 HelloGitHub 和大家一起分享下吧。

替代 Redis 的开源项目「GitHub 热点速览」的更多相关文章

  1. 朋友圈那串神秘字符背后的开源项目「GitHub 热点速览」

    ​如果你这周没刷到类似 "npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237..." 的一串字符,那就说明本期 GitHub T ...

  2. 如何让程序更健壮「GitHub 热点速览」

    对于 ML 模型训练而言,好的数据集能让结果更健壮,cleanlab 是一个降低数据噪音,及时帮你修正数据集错误的工具.好的工具能让你的结果更完美.同样的,RedTeam-Tools 提高了渗透测试的 ...

  3. 真·生产力「GitHub 热点速览」

    这些工具真的能极大提高生产力,节约你的时间来自(摸)我(鱼)增(划)值(水).先别提 style2paints,你给它随意画个草图,就能给你一个能交付给甲方爸爸的成品插画.如果提升 30%-40% 传 ...

  4. 开源不到 48 小时获 35k star 的推荐算法「GitHub 热点速览」

    本周的热点除了 GPT 各类衍生品之外,还多了一个被马斯克预告过.在愚人节开源出来的推特推荐算法,开源不到 2 天就有了 35k+ 的 star,有意思的是,除了推荐算法本身之外,阅读源码的工程师们甚 ...

  5. AI 能多强「GitHub 热点速览」

    不知道 AI 在你那边是什么样的具象,在我这就是各种搞图:从给线稿图上色,到直接给你生成一张小色图,AI 最近是真出风头,本周热点速览也收录了 2 个 AI 项目,也和图像有关.还有一个和 AI 相关 ...

  6. 你的梦想家居「GitHub 热点速览」

    上周推荐的 ChatGPT 版小爱,不知道有哪些小伙伴回去尝试接入了呢?本周依旧由 2 个不错的 ChatGPT 延伸项目,一个是比 DeepL.Grammarly 更懂你的划词翻译 openai-t ...

  7. 穷人版生产力工具,好用得飞起 「GitHub 热点速览」

    被 GPT 和 OpenAI 刷屏了一个多月,现在 GitHub Trending 已经没有什么和 gpt 无关的项目了,但是好在总有优秀的开源项目拯救我的项目疲惫.像是贴心好用的反向代理 pgrok ...

  8. Python 霸榜的一周,又有什么新 AI 力作呢?「GitHub 热点速览」

    GPT 带火了一波语言模型,LLaMA 和 Alpaca 也在持续发力.依旧是各类 GPT 后缀霸榜 GitHub trending 的一周,为此特推部分专门收录了两个比较不错的 GPT 应用.而作为 ...

  9. 碉堡!“万物皆可分”标记模型上线「GitHub 热点速览」

    这周有个让人眼前一亮的图像识别模型 segment-anything,它能精细地框出所有可见物体,它标记出的物体边界线清晰可见.如此出色的模型,自然获得了不少人的赞赏,开源没几天,就拿下了 18k+ ...

  10. 一款能“干掉” ChatGPT 的应用「GitHub 热点速览」

    据说有了它,ChatGPT 就可以靠边站了.因为 Auto-GPT 能更加主动地完成你给他的指定任务,不用做更多的人为干涉,它的推理能力比 ChatGPT 更强,有人用它解放双手做了个 React 网 ...

随机推荐

  1. JS leetcode 翻转字符串里的单词 题解分析

    壹 ❀ 引 今天来做一道难度中等,但实际难度并不是很高的题目,题目来源leetcode151. 翻转字符串里的单词,题目描述如下: 给定一个字符串,逐个翻转字符串中的每个单词. 示例 1: 输入: & ...

  2. SSD寻址单元IU对寿命的影响——古猫先生存储随笔转载

    SSD寻址单元IU对寿命的影响有多大? 原创 古猫先生 存储随笔 2024-01-30 08:30 发表于浙江 [转载]SSD寻址单元IU对寿命的影响有多大? (qq.com) 随着存储技术的不断进步 ...

  3. Java 封装、继承、多态的理解

    更好的阅读体验:Java 封装.继承.多态的理解 1.封装 封装:就是隐藏对象的属性和实现细节,仅对外提供公共访问方式.让使用者知道的才暴露出来,不需要让使用者知道的全部隐藏起来 封装的好处:避免使用 ...

  4. 【Android】使用Binder实现进程间传递对象案例

    1 前言 使用AIDL实现进程间通讯简单案例 和 使用AIDL实现进程间传递对象案例 中介绍了使用 AIDL 进行进程间通讯,其本质仍然是Binder,aidl 文件对应生成的接口中,将服务端调用的抽 ...

  5. JSP使用FileUpload上传文件设置setSizeMax后连接被重置

    今天在学习利用JSP+Servlet+FileUpload开发文件上传功能.在设置了上传文件最大限制为10M以后,选择了3M的pdf上传提交后连接被重置了... 我的代码: //设置上传单个文件的大小 ...

  6. windows 上 cmake 添加 vcpkg 选项

    使用 cmake 编写相关的工程时,工程有时会使用 vcpkg 添加的第三方库,比如 zip 库 查看一些案例后,我发现有些回答不太准确,遂记录下 现在,我们需要在工程中使用 zip_open 函数执 ...

  7. win32-使用GDI+缩放图像

    滑动鼠标滚轮可以改变图像大小 #include <windows.h> #include <tchar.h> #include <Urlmon.h> // URLD ...

  8. redis 安装的参考文章

    redis 安装  :  https://www.runoob.com/redis/redis-install.html

  9. STL-list模拟实现

    #pragma once #include"16my_Itetator.h" //测试用 #include<iostream> //测试用 using std::cou ...

  10. Java 对象数组题目 + 改进(封装方法)

    1 /** 2 * 3 * @Description 4 * @author Bytezero·zhenglei! Email:420498246@qq.com 5 * @version 6 * @d ...