• ## dcron 分布式定时任务库 ### 原理 基于redis同步节点数据,模拟服务注册。然后将任务名 根据一致性hash 选举出执行该任务的节点。 ### 流程图 ![dcron流程图](https://github.com/LibiChai/dcron/raw/master/dcron.png) ### 特性 - 负载均衡:根据任务数据和节点数据均衡分发任务。 - 无缝扩容:如果任务节点负载过大,直接启动新的服务器后部分任务会自动迁移至新服务实现无缝扩容。 - 故障转移:单个节点故障,10...
  • # redis_orm Object Relational Mapping use redis as a relational database。 #### 产出背景 ```text 项目的快速迭代,不仅需要敏捷的开发,还需具备较高性能的和稳定性,单纯用关系型数据库有瓶颈,然后在关系型数据库基础上加分布式缓存或者进程内缓存有增加了开发和维护成本,刚好项目中在用Redis,就考虑基于Redis的Hash和SortedSet两个数据结构来设计类似关系型数据库的ORM。经过多个版本的迭代,现在已经实现了ORM...
  • Rudr 是开放应用程序模型(OAM)的实现,它使用户可以轻松地在任何 Kubernetes 集群上部署和管理应用程序,而无需考虑应用程序开发人员和运营商的关注。 目前,Rudr 正处于 Alpha 状态。它可能反映了纳入 Open App Model 规范之前正在审查的API或功能。 Rudr 采用增量方法来解决问题。当前的体系结构是 Kubernetes 的插件集,允许使用本机 API(并且您仍在使用kubectl!)在 Kubernetes 集群上实现和部署 OAM 规范。 这使应用...
  • # autossh 一个SSH远程客户端,可一键登录远程服务器,主要用来弥补Mac/Linux Terminal SSH无法保存密码的不足。 ![演示](https://raw.githubusercontent.com/islenbo/autossh/8456ea1e8cb82541018a4133227a257c70199e40/docs/images/ezgif-5-42b5117192fc.gif) ## Wiki [Wiki](https://github.com/islenbo/autos...
  • gonet 游戏服务器架构,mmo架构,分布式snowflake64为整形uuid,ai行为树,配置data,游戏大部分都在内存运算,分布式缓存redis,增加db模块读取blob数据。 设计之初,建立在actor模式下的;rpc,以及消息驱动,rpc无需注册,支持通用数据(int,[]int,[3]int),map数据,以及struct数据,rpc性能测试如下;sql封装简单的orm(orm支持pb结构体做mysql blob,orm支持结构体做mysql json类型)具体看demo websock...
  • [项目详情链接](https://taohuawu.club/go-event-loop-networking-library-gnet) `gnet` 是一个基于 Event-Loop 事件驱动的高性能和轻量级网络库。这个库直接使用 [epoll](https://en.wikipedia.org/wiki/Epoll) 和 [kqueue](https://en.wikipedia.org/wiki/Kqueue) 系统调用而非标准 Golang 网络包:[net](https://golang.or...
  • ## HTTP & SOCKS5 fast security proxy Currently implemented HTTP,SOCKS5 protocol ### Transport Protocol The package [head, body], head is 4 bytes containing the current encrypted packet length, and the body is the encrypted bytes. After the read is complete...
  • 基于Beego go-metrics 获取监控数据节点 设计 Cron 每秒将数据放至go-metrics中, 所有请求获取的数据都是内存中的数据,无历史数据 保证被压力测试时不断被调取系统资源造成的性能浪费
  • # go-models-mysql `go-models-mysql` its lite and easy model. ## Features * Field scanning has become easier since the original driver was extended. Assumption: we have 5 fields to scan ```go type Tb struct { field0 sql.NullString, field1 sql.NullString,...
  • [https://github.com/eehsiao/sqlbuilder](https://github.com/eehsiao/sqlbuilder) # sqlbuilder `sqlbuilder` is a simple sql query string builder sqlbuilder its recursive struct call, that you can easy to build sql string ex: dao.Select().From().Join().Wher...
  • model-gen 是一个Go 专用的模型生成器。 原理 通过获取 mysql 表结构,进行 model 文件生成。 迭代 目前支持 mysql,未来预计支持 mariadb 和 pgsql (sql server 还未考量) 快速入门 代码: mysqlHost := "127.0.0.1" mysqlPort := "3306" mysqlUser := "root" mysqlPassword := "sa" mysqlDbname :=...
  • A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性。
  • 这是用Golang封装了微信支付的所有API接口的SDK,并自动生成和解析XML数据,还包括部分服务号、小程序、移动端的工具函数。 * 支持境内普通商户和境内服务商(境外和银行服务商没有条件测试)。 * 支持全局配置应用ID、商家ID等信息。 * 全部参数和返回值均使用struct类型传递,而不是map类型。 * 包含公众号网页授权码的相关操作。 * 包含H5、小程序、移动端的支付签名生成方法。
  • Rboot 是一个使用 golang 写的,简单、高效的聊天机器人框架,易于扩展,它可以工作在不同的聊天服务上,并通过扩展脚本可实现 聊天、工作助手、服务监控、警报触发 等功能。 安装 go get -v github.com/ghaoo/rboot 快速开始 rboot 内置了 cli 和 微信网页版 的支持,微信网页版 使用的是 KevinGong2013/wechat 包,稍微做了修改。 创建 创建文件夹 在文件夹下创建 .env 配置文件 创建文件 main.go 创建文件夹...
  • gormt 可以将mysql数据库自动生成golang sturct结构, - 数据库表,列字段注释支持 - singular_table 表名复数(大驼峰) - json tag json标签输出 - gorm.Model 基本模型 - PRIMARY_KEY 将列指定为主键 - UNIQUE,INDEX,UNIQUE_INDEX 索引,键支持 - NOT NULL 将列指定为非 NULL - 支持外键相关属性
  • ConcurrentCron is a task scheduler that supports high concurrency at the same time which lets you run Go functions periodically at pre-determined interval using a simple, human-friendly syntax. You can run this scheduler in the following way func test(nu...
  • golang 高性能异步工作池。并发限制goroutine池,限制任务执行的并发性,而不是排队的任务数。无论排队多少任务,都不会阻止提交任务。
公告

欢迎访问 码农俱乐部  点击这里设置您的邮箱  可以接收站内跟帖、回复邮件提醒,不错过任何一条消息。

关注公众号订阅更多技术干货! 码农俱乐部