ProMonkey阅读(296)
分布式系统
有助于构建分布式系统的软件包。
- celeriac - 用于在Go中添加支持以交互和监视Celery工作者,任务和事件的库。
- consistent - 具有受限负载的一致哈希
- dht - BitTorrent Kademlia DHT实施。
- digota - grpc电子商务微服务。
- dot - 使用操作转换/ OT进行分布式同步。
- doublejump - 改进后的Google的跳转一致性哈希。
- dragonboat - Go中功能齐全的高性能多组Raft库。
- drmaa - 基于DRMAA标准的集群调度程序的作业提交库。
- dynamolock - DynamoDB支持的分布式锁定实现。
- dynatomic - 将DynamoDB用作原子计数器的库。
- emitter-io - 使用MQTT,Websockets和love构建的高性能,分布式,安全和低延迟的发布-订阅平台。
- flowgraph - 基于流的编程包。
- gleam - 用纯围棋和Luajit快速和可扩展的分布式的map / reduce系统,具有Luajit的高性能结合Go的高并发,单独运行或分发。
- glow - 易于使用的可扩展的分布式大数据处理,Map-Reduce,DAG执行,全部在纯Go中进行。
- go-health - health-用于在服务中启用异步依赖项运行状况检查的库。
- go-jump - Google的“ Jump”一致性哈希函数的端口。
- go-kit -支持服务发现,负载平衡,可插拔传输,请求跟踪等的微服务工具包
- go-sundheit - 建立用于支持为golang服务定义异步服务运行状况检查的库。
- gorpc - 简单,快速和可扩展的RPC库,可实现高负载。
- grpc-go - gRPC的Go语言实现。基于HTTP / 2的RPC。
- hprose - 十分新颖的RPC库,现在支持25种以上的语言。
- jsonrpc - jsonrpc软件包可帮助实现JSON-RPC 2.0。
- jsonrpc - JSON-RPC 2.0 HTTP客户端实现。
- KrakenD - 具有中间件的超高性能API网关框架。
- liftbridge - NATS的轻量级,容错消息流。
- micro - 可插拔的microService工具箱和分布式系统平台。
- NATS - 用于微服务,IoT和云本机系统的轻量级高性能消息传递系统。
- outboxer - Outboxer是一个实现库模式的go库。
- pglock - PostgreSQL支持的分布式锁定实现。
- raft - HashiCorp的Raft共识协议的Golang实现。
- raft - 围棋实施筏一致协议,由CoreOS的。
- rain - BitTorrent客户端和库。
- redis-lock - 使用Redis的简化分布式锁定实现。
- resgate - 用于构建REST,实时和RPC API的实时API网关,其中所有客户端都可以无缝同步。
- ringpop-go - Go应用程序的可扩展,容错应用程序层分片。
- rpcx - 分布式可插拔RPC服务框架,例如阿里巴巴Dubbo。
- sleuth - 用于在HTTP服务之间进行无主p2p自动发现和RPC的库(ZeroMQ)。
- tendermint - 高性能中间件,用于使用Tendermint共识和区块链协议将以任何编程语言编写的状态机转换为拜占庭容错复制状态机。
- torrent - BitTorrent客户端软件包。
ProMonkey阅读(266)
ProMonkey阅读(302)
多个后端
- cachego - 用于多个驱动程序的Golang缓存组件。
- cayley - 支持多个后端的Graph数据库。
- dsc - SQL,NoSQL,结构化文件的数据存储连接。
- gokv - Go的简单键值存储抽象和实现(Redis,Consul,etcd,bbolt,BadgerDB,LevelDB,Memcached,DynamoDB,S3,PostgreSQL,MongoDB,CockroachDB等)。
ProMonkey阅读(300)
ProMonkey阅读(304)
ProMonkey阅读(298)
SQL查询构建器
用于构建和使用SQL的库。
- dbq - Go的零样板数据库操作。
- Dotsql - Go库,可帮助您将sql文件保存在一个位置并轻松使用它们。
- gendry - 非侵入性SQL构建器和强大的数据绑定器。
- godbal - go的数据库抽象层(dbal)。支持SQL Builder,轻松获得结果。
- goqu - 惯用的 SQL构建器和查询库。
- igor - PostgreSQL的抽象层,支持高级功能并使用类似于gorm的语法。
- jet - 框架写在Go类型安全的SQL查询,有能力轻松地转换数据库查询结果到期望的任意对象结构。
- ormlite - 轻量级软件包,包含一些类似于ORM的功能和sqlite数据库的帮助程序。
- ozzo-dbx - 强大的数据检索方法以及与数据库无关的查询构建功能。
- qry - 使用原始SQL查询从文件生成常量的工具。
- scaneo - 生成Go代码以将数据库行转换为任意结构。
- sqlf - 快速的SQL查询生成器。
- sqrl - SQL查询生成器,Squirrel的分支,具有改进的性能。
- Squalus - Go SQL包上的薄层,使执行查询更加容易。
- Squirrel - Go库,可帮助您构建SQL查询。
- xo - 根据现有的架构定义或支持PostgreSQL,MySQL,SQLite,Oracle和Microsoft SQL Server的自定义查询为数据库生成惯用的Go代码。
ProMonkey阅读(307)
数据库架构迁移
- avro - 发现SQL模式并将其转换为AVRO模式。将SQL记录查询为AVRO字节。
- darwin - Go的数据库架构演化库
- go-fixtures - Golang出色的内置数据库/ sql库的Django样式的夹具。
- go-pg-migrations - 一个Go软件包,可帮助使用go-pg / pg编写迁移。
- gondolier - 使用结构修饰符的数据库迁移库。
- goose - 数据库迁移工具。您可以通过创建增量SQL或Go脚本来管理数据库的演变。
- gormigrate - Gorm ORM的数据库架构迁移帮助器。
- migrate - 数据库迁移。CLI和Golang库。
- migrator - 简单的Go数据库迁移库。
- pravasan - 简单迁移工具-当前用于MySQL,但计划很快支持Postgres,SQLite,MongoDB等。
- schema - 用于在Go二进制文件中嵌入数据库/ sql兼容数据库的模式迁移的库。
- skeema - MySQL的纯SQL模式管理系统,支持分片和外部在线模式更改工具。
- soda - 用于MySQL,PostgreSQL和SQLite的数据库迁移,创建,ORM等。
- sql-migrate - 数据库迁移工具。允许使用go-bindata将迁移嵌入到应用程序中。
ProMonkey阅读(303)
ProMonkey阅读(291)
ProMonkey阅读(338)
数据库
Go中实现的数据库。
- badger - Go中的快速键值存储。
- bcache - 最终一致的分布式内存缓存Go库。
- BigCache - 高效的键/值缓存,用于千兆字节的数据。
- Bitcask - Bitcask是使用纯Go编写的可嵌入,持久且快速的键值(KV)数据库,由于具有bitcask磁盘布局(LSM + WAL),因此具有可预测的读/写性能,低延迟和高吞吐量。
- bolt - Go的低级键/值数据库。
- buntdb - 用于Go的快速,可嵌入的内存中键/值数据库,具有自定义索引和空间支持。
- cache - 内存中键:具有到期时间,0个依存关系,<100 LoC,100%覆盖率的值存储。
- cache2go - 内存键:值缓存,支持基于超时的自动失效。
- clusteredBigCache - 具有集群支持和单个项到期的BigCache。
- cockroach - 可扩展,地理复制,事务性数据存储。
- Coffer - 支持事务的简单ACID键值数据库。
- couchcache - 由Couchbase服务器支持的RESTful缓存微服务。
- CovenantSQL - CovenantSQL是区块链上的SQL数据库。
- dgraph - 可伸缩,分布式,低延迟,高吞吐量图形数据库。
- diskv - 本地磁盘支持的键值存储。
- eliasdb - 具有REST API,短语搜索和类似SQL的查询语言的无依赖关系的事务图数据库。
- fastcache - 快速线程安全的内存高速缓存,用于大量条目。最大限度地减少GC开销。
- GCache - 缓存库,支持过期的缓存,LFU,LRU和ARC。
- go-cache - Go的内存中键:值存储/缓存(类似于Memcached)库,适用于单机应用程序。
- goleveldb - Go中LevelDB键/值数据库的实现。
- gorocksdb - Gorocksdb是用Go编写的 RocksDB 的包装。
- groupcache - Groupcache是一个缓存和缓存填充库,在许多情况下可以替代memcached。
- influxdb - 可扩展的数据存储区,用于指标,事件和实时分析。
- Kivik - Kivik为CouchDB,PouchDB和类似数据库提供了通用的Go和GopherJS客户端库。
- ledisdb - Ledisdb是像基于LevelDB的Redis一样的高性能NoSQL。
- levigo - Levigo是LevelDB的Go包装器。
- moss - Moss是用100%Go编写的简单LSM键值存储引擎。
- nutsdb - Nutsdb是用纯Go编写的简单,快速,可嵌入,持久的键/值存储。它支持完全可序列化的事务和许多数据结构,例如列表,集合,排序集合。
- piladb - 基于堆栈数据结构的轻量级RESTful数据库引擎。
- prometheus - 监视系统和时间序列数据库。
- pudge - 使用Go的标准库编写的快速简单的键/值存储。
- rqlite - 基于SQLite构建的轻型,分布式,关系数据库。
- Scribble - 小型平面文件JSON存储。
- slowpoke - 具有持久性的键值存储。
- tempdb - 临时项目的键值存储。
- tidb - TiDB是分布式SQL数据库。受到Google F1设计的启发。
- tiedot - 由Golang提供支持的NoSQL数据库。
- Vasto - 分布式高性能键值存储。在磁盘上。最终一致。哈。能够增长或收缩而不会中断服务。
- VictoriaMetrics - 快速,资源有效且可扩展的开源时间序列数据库。可用作Prometheus的长期远程存储。支持PromQL。