本周GitHub项目圈选: 主要包含开发工具集、泄漏检测、Python BT下载客户器、MySQL平替、蚂蚁开源数据库、多线程Redis等热点项目。
it-tools 是一个为开发人员提供的一组实用的在线工具集合,具有出色的用户体验。这些工具旨在帮助开发人员更轻松地执行各种任务,从代码测试到性能分析等。
it-tools注重用户体验,确保用户可以快速而高效地使用这些工具,从而提高他们的工作效率。
Star量:5.4K+
项目地址:
https://github.com/CorentinTh/it-tools
goleak 是 Uber 团队开源的一款 goroutine 泄漏检测工具,它可以非常轻量地集成到测试中,对于 goroutine 泄漏的防治和工程鲁棒性的提升很有帮助。
而 goroutine 作为 golang 并发实现的核心组成部分,非常容易上手使用,但却很难驾驭得好。我们经常会遭遇各种形式的 goroutine 泄漏,这些泄漏的 goroutine 会一直存活直到进程终结。它们的占用的栈内存一直无法释放、关联的堆内存也不能被 GC 清理,系统的可用内存会随泄漏 goroutine 的增多越来越少,直至崩溃!
star量:4k+
项目地址:
https://github.com/uber-go/goleak
安装命令:
go get -u go.uber.org/goleak
调用示例:
func TestA(t *testing.T) { defer goleak.VerifyNone(t) // test logic here.}
pieces 是由 Python 异步实现一个简单的 BitTorrent 客户端。
BitTorrent 是一种点对点协议,点对点加入一群其他点以在彼此之间交换数据。每个对等点同时连接到多个对等点,从而同时向多个对等点下载或上传。
与从中央服务器下载文件相比,这在限制带宽方面非常有用。它也非常适合保持文件可用,因为它不依赖于在线的单一来源。
Star量:217
项目地址:
https://github.com/eliasson/pieces
调用示例:
with open('tests/data/ubuntu-16.04-desktop-amd64.iso.torrent', 'rb') as f: meta_info = f.read() torrent = Decoder(meta_info).decode()
Sequel-Ace 是一个 Sequel Pro 平替,可以让我们在 macOS 上快乐搞 MySQL。
因为 Mac 上的老牌数据库管理工具 Sequel Pro 停止更新,所以就有了 Sequel-Ace。它免费、开源、持续更新,支持 Intel 和苹果芯片,适用于 macOS 10.13 及以上系统。
Star量:6K+
项目地址:
https://github.com/Sequel-Ace/Sequel-Ace
安装命令:
brew install --cask sequel-ace
oceanbase 是一款源自蚂蚁集团的完全自主研发、高度兼容 Oracle 和 MySQL 的原生分布式数据库,已连续 10 年稳定支撑「双 11」,于 2021 年正式开源。
它拥有金融级高可用、水平扩展、分布式事务、省钱(存储成本低)、易迁移等特性,具备机房和城市级别的高可用和容灾的功能,支持混合事务和分析(处理线上和离线大数据分析),还可以单机部署使用(单机分布式一体化架构)。
Star量: 6.7K+
项目地址:
https://github.com/oceanbase/oceanbase
KeyDB 相当于多线程版的 Redis,是由 Snapchat 开源的支持多线程的 Redis,它具有高性能、更高的吞吐量、完全兼容 Redis 协议等特点。有了多线程就可以放心大胆地执行 KEYS 和 SCAN 命令,不用再担心阻塞 Redis 了。
Star量:8.2K+
项目地址:
https://github.com/Snapchat/KeyDB
以上就是本周GitHub圈选的六款开源项目,有兴趣的同学可以前往GitHub了解!!