有哪些值得学习的Go语言开源项目


title: "有哪些值得学习的Go语言开源项目"
date: 2021-01-25T20:37:32+08:00
draft: true
tags: ['go']
author: "dadigang"
author_cn: "大地缸"
personal: "http://www.real007.cn"


关于作者

http://www.real007.cn/about

有哪些值得学习的 Go 语言开源项目?

Go 实现的存储服务器

  • minio- Minio 是一个与 Amazon S3 APIs 兼容的开源对象存储服务器,分布式存储方案
  • rclone - “用于云存储的 Rsync” - Google Drive, Amazon Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Cloudfile…
  • camlistore - Camlistore 是你的个人存储系统:一种存储、同步、共享、建模和备份内容的方式
  • torus - CoreOS 的现代分布式存储系统
  • s3git - 云存储的 Git。用于数据的分布式版本控制系统
  • rook - 开放、云本地和通用的分布式存储

Key-Value 存储(Key-Value Store)

Go 实现的 Key-Value 存储

  • etcd - 可靠的分布式 key-value 存储,用于分布式系统的最关键数据
  • go-cache - Go 语言实现的一个内存中的缓存框架,实现 Key-Value 的序列存储,适用于单台机器应用程序
  • biscuit - Biscuit 用于 AWS 基础架构建设时多区域 HA key-value 存储
  • diskv - 支持磁盘的 key-value 存储

文件系统(File System)

Go 实现的文件系统

  • git-lfs - 用于大文件版本控制的 Git 扩展
  • seaweedfs - SeaweedFS 是一个用于小文件的简单且高度可扩展的分布式文件系统
  • fsnotify - Go 实现的跨平台文件系统监控库
  • goofys - Go 实现的高性能,POSIX-ish Amazon S3 文件系统
  • go-systemd - systemd 的 Go 语言绑定版(包括socket activation, journal, D-Bus, 和 unit files)
  • gcsfuse - 用于与 Google 云存储交互的用户空间文件系统
  • svfs - 基于 Openstack 的虚拟文件系统

数据库(Database)

Go 实现的数据库

  • BigCache - 用于千兆字节数据的高效 key/value 缓存
  • bolt - Go 实现的低层级的 key/value 数据库
  • buntdb - 一个 Go 实现的快速、可嵌入的 key/value 内存数据库,具有自定义索引和 geospatial 支持的功能
  • cache2go - key/value 内存缓存,支持基于超时的自动无效功能
  • cockroach - 一个可伸缩的、支持地理位置处理、支持事务处理的数据存储系统
  • couchcache - 由 Couchbase 服务器支持的 RESTful 缓存微服务
  • dgraph - 具有可扩展、分布式、低延迟和高吞吐量功能的图形数据库
  • eliasdb - 使用 REST API,短语搜索和类似 SQL 查询语言的无依赖性,支持事务处理的图形数据库
  • forestdb - Go bindings for ForestDB.Go 语言绑定版的 ForestDB
  • GCache - 支持可用缓存、LFU、LRU 和 ARC 的缓存数据库
  • geocache - An in-memory cache that is suitable for geolocation based applications.适用于 地理位置处理基于应用程序的内存缓存
  • goleveldb - An implementation of the LevelDB key/value database in the Go.Go 实现的 LevelDB key/value 数据库
  • groupcache - Groupcache 是一个缓存和缓存填充库,在许多情况下用于替代 memcached
  • influxdb - 开源的分布式指标、事件和实时分析的可扩展数据库
  • ledisdb - 基于 LevelDB 类似 Redis 的高性能 NoSQL 数据库
  • levigo - 用于 LevelDB 的 Go 封装包
  • moss - Go 实现的简单 LSM key-value 存储引擎
  • piladb - 基于堆栈数据结构的轻量级 RESTful 数据库引擎
  • pREST - 为任何来自 PostgreSQL 的数据库提供一个 RESTful API
  • prometheus - 服务监控系统和时间序列数据库
  • rqlite - 基于 SQLite 构建的轻量级、分布式关系数据库
  • scribble - 一个小型的 Flat File JSON 存储
  • tidb - TiDB 是一个分布式 SQL 数据库,灵感来自于 Google F1 和 Google spanner。TiDB 支持包括传统 RDBMS 和 NoSQL 的特性。
  • tiedot - 基于 Go 的 NoSQL 数据库
  • Tile38 - 具有空间索引和实时地理围栏的地理位置数据库

数据库 迁移

  • darwin - Go 实现的数据库 schema 演进库
  • goose - 数据库迁移工具。可通过创建增量 SQL 或 Go 脚本来管理数据库的演变
  • gormigrate - Gorm ORM 的数据库迁移助手
  • migrate - Go 实现的数据库迁移处理,支持 MySQL, PostgreSQL, Cassandra, 和 SQLite
  • pravasan - 简单的迁移工具,目前支持 MySQL,PostgreSQL,但计划很快支持 SQLite, MongoDB 等
  • soda - 具有数据库迁移、创建和 ORM 等功能,适用于 MySQL, PostgreSQL, 和 SQLite
  • sql-migrate - 数据库 schema 迁移工具。允许使用 go-bindata 将迁移嵌入到应用程序中

数据库工具

  • go-mysql - Go 实现的用于处理 MySQL 协议和复制的工具集
  • go-mysql-elasticsearch - 将 MySQL 数据自动同步到 Elasticsearch 中
  • kingshard - Go 实现的高性能 MySQL Proxy 项目
  • myreplication - MySQL 二进制日志复制监听器。支持语句和基于行的复制
  • orchestrator - MySQL 复制拓扑管理器和可视化工具
  • pgweb - Go 实现的基于 Web 的 PostgreSQL 数据库管理系统
  • vitess - 分布式 MySQL 工具集。vitess 提供了服务器和工具,以便于大规模 Web 服务的 MySQL 数据库扩展

SQL 查询构建器,用于构建和使用 SQL 的库

  • dat - Go 实现的 Postgres 数据访问工具包
  • Dotsql - Go 语言实现的库,可帮助你将 sql 文件保存至某个地方并轻松使用它
  • goqu - Go 实现的 SQL 构建器和查询库
  • igor - PostgreSQL 的抽象层,支持高级功能并使用类似 Gorm 的语法
  • ozzo-dbx - 强大的数据检索方法以及 DB-agnostic 查询构建功能
  • scaneo - 生成 Go 代码以将数据库行转换为任意结构
  • sqrl - SQL 查询构建器,Squirrel 的 fork 具有更好的性能
  • Squirrel - 帮助你构建 SQL 查询的 Go 库
  • xo - 基于现有 schema 定义或支持 PostgreSQL,MySQL,SQLite,Oracle 和 Microsoft SQL Server 的自定义查询生成数据库的惯用 Go 代码

数据库驱动

用于连接和操作数据库的库

关系数据库

  • bgc - Go 实现的用于 BigQuery 的数据存储连接
  • firebirdsql - Firebird RDBMS SQL 驱动
  • go-adodb - Microsoft ActiveX Object 数据库驱动,使用 database/sql
  • go-bqstreamer - BigQuery 快速并发流插入
  • go-mssqldb - Microsoft MSSQL 驱动
  • go-oci8 - Oracle 驱动,使用 database/sql
  • go-sql-driver/mysql - MySQL 驱动
  • go-sqlite3 - SQLite3 驱动,使用 database/sql
  • gofreetds - Microsoft MSSQL 驱动。Go wrapper over FreeTDS.
  • pgx - PostgreSQL 驱动
  • pq - Go 实现的用于 database/sql 的 Postgres 驱动

NoSQL 数据库

  • aerospike-client-go - Go 实现的 Aerospike 客户端
  • arangolite - Go 实现的 ArangoDB 轻量级驱动程序
  • asc - 用于 Aerospike 的数据存储连接
  • cayley - 支持多个后端的图形数据库
  • dsc - 用于 SQL, NoSQL 以及结构化文件的数据存储连接
  • dynago - DynamoDB 的客户端
  • go-couchbase - Go 实现的 Couchbase 客户端
  • go-couchdb - Go 实现的 CouchDB HTTP API 封装包
  • gocb - 官方的 Couchbase Go SDK 包
  • gocql - Go 实现的 Apache Cassandra 驱动
  • gomemcache - memcache 客户端库
  • gorethink - RethinkDB 驱动
  • goriak - Riak KV 驱动
  • mgo - MongoDB 驱动,它根据标准 Go 习惯用法在非常简单的 API 下实现丰富且经过良好测试的功能选择
  • neo4j - Neo4j Rest API 绑定
  • Neo4j-GO - Neo4j REST 客户端
  • neoism - Neo4j client 客户端
  • redigo - Redis 数据库客户端
  • redis - Redis 客户端
  • redis - 简单强大的 Redis 客户端
  • redis - Redis 协议兼容 TCP servers/services

搜索和分析数据库

  • bleve - 现代文本索引库
  • elastic - Elasticsearch 客户端
  • elastigo - Elasticsearch 客户端库
  • goes - 与 Elasticsearch 交互的库
  • skizze - A probabilistic data-structures service and storage.数据结构服务和存储
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,265评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,078评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,852评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,408评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,445评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,772评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,921评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,688评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,130评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,467评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,617评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,276评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,882评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,740评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,967评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,315评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,486评论 2 348

推荐阅读更多精彩内容