dcron分布式定时任务库 分布式定时任务库 dcron分布式定时任务库

## dcron 分布式定时任务库 ### 原理 基于redis同步节点数据,模拟服务注册。然后将任务名 根据一致性hash 选举出执行该任务的节点。 ### 流程图 ![dcron流程图](https://github.com/LibiChai/dcron/raw/master/dcron.png) ### 特性 - 负载均衡:根据任务数据和节点数据均衡分发任务。 - 无缝扩容:如果任务节点负载过大,直接启动新的服务器后部分任务会自动迁移至新服务实现无缝扩...阅读全文

2019-08-13 15:14:20 LibiChai

awesome-go-cn Go框架、库和软件的中文收录大全 awesome-go-cn

## awesome-go-cn awesome-go-cn是一个很棒的Go框架、库和软件的中文收录大全,帮助你第一时间发现优质项目。 它在awesome-go的基础上完成了以下功能 - 为每个工程添加star,并在通过star进行降序排序。 - 为每个工程添加star/更新时间/中文文档等相关标签。 - 提供中文翻译,当然同时也保留了英文原版文档。 - 定期与原版awesome-go进行同步,保证与国际接轨^_^ **快捷访问方式** : [https://aweso...阅读全文

2019-08-07 14:22:30

GoMybatis 高性能数据库ORM框架 GoMybatis

* [文档](https://zhuxiujia.github.io/gomybatis.io/#/getting-started) ## 前言 学习过原生的Go链接Mysql的方法,使用Go自带的“database/sql”数据库链接api。</br> “github.com/go-sql-driver/mysql”mysql驱动,通过比较原生的方法去写sql和处理事务。</br> <p>目前开源界也有好多封装好的Orm操作框架:</p> Java系(Mybatis,MybatisP...阅读全文

2019-08-01 22:48:18 zhuxiujia

forest 分布式任务调度平台 forest

# 分布式任务调度平台 ## 前言 在企业系统开发过程中难免少不了一些定时任务来进行定时触发执行任务,对于非分布式环境系统中,我们只需要在对应系统中内部集成一些调度库进行配置定时触发即可。 比如:使用Spring框架集成quartz,只需要进行一些简单的配置就能定时执行任务了。但是随着企业的系统越来越多、逐步从单一应用慢慢演变为微服务集群。 在分布式集群系统中主要面临出如:任务的重复执行、没有统一定时任务配置、任务节点故障转移、任务监控&报警等一些列的功能都是要在分布式系统中...阅读全文

2019-07-26 10:09:46 busgo

gonet-游戏服务器 游戏服务器 gonet-游戏服务器

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 ...阅读全文

2019-07-15 13:06:18 ylb

gmq 消息队列 gmq

`gmq`是基于`redis`提供的特性,使用`go`语言开发的一个简单易用的队列;支持延迟任务,异步任务,超时任务,优先级任务 ### 应用场景 - 延迟任务 - 延迟任务,例如用户下订单一直处于未支付状态,半个小时候自动关闭订单 - 异步任务 - 异步任务,一般用于耗时操作,例如群发邮件等批量操作 - 超时任务 - 规定时间内`(TTR)`没有执行完毕或程序被意外中断,则消息重新回到队列再次被消费,一般用于数据比较敏感,不容丢失的 - 优先级任务 ...阅读全文

2019-07-10 09:46:59 wuzhc

Gloo Kubernetes 原生 API 网关 Gloo

Gloo 是一个基于 Envoy 的 Kubernetes 原生入口控制器和下一代 API 网关。Gloo 在函数级路由方面表现卓越,它支持传统应用程序、微服务与 Serverless。Gloo 设计独特,可支持混合应用,其中的多种技术、架构、协议和云可以共存。 ![image](https://static.oschina.net/uploads/space/2019/0709/182422_sWr6_3820517.png)阅读全文

2019-07-09 19:30:01 solo-io

Ambassador Kubernetes 原生 API 网关 Ambassador

Ambassador 是一个基于 Envoy 构建的 Kubernetes 原生 API 网关,专为微服务而设计,它本质上是一个 Envoy 入口控制器,但具有更多功能。 ![image](https://static.oschina.net/uploads/space/2019/0709/181424_9AuX_3820517.png) 关键特性包括: * 自助服务配置,通过 Kubernetes 注解 * 支持 gRPC、HTTP/2 与 WebSockets * 支持 C...阅读全文

2019-07-09 18:30:01 datawire

SOFAStack 金融级分布式架构 SOFAStack

SOFAStack™(Scalable Open Financial Architecture Stack)是一套用于快速构建金融级分布式架构的中间件,也是在金融场景里锤炼出来的最佳实践。 **项目官网:[https://www.sofastack.tech](https://www.sofastack.tech/)** ![image](https://static.oschina.net/uploads/space/2019/0709/163750_2OA0_3820517.png) ...阅读全文

2019-07-09 17:30:02 sofastack

nginMesh NGINX 的 Service Mesh 方案 nginMesh

nginMesh 是 NGINX 开源的 Service Mesh 方案,它提供基于 NGINX 的 Service Mesh 实现。nginMesh 与 Istio 兼容,利用 NGINX 实现 Sidecar 代理,集成在 Istio 中,可以标准、可靠和安全的方式促进服务之间的通信。 **_注:nginMesh 项目目前已经不再积极开发,_最新版本适用于 Istio 0.7。** ![image](https://static.oschina.net/uploads/space/201...阅读全文

2019-07-09 11:30:01 nginxinc

pan-light 百度网盘不限速客户端 pan-light

pan-light 是一款不限速的百度网盘客户端, 基于 golang + Qt5 开发. 本项意义在于探究 golang 在图形界面客户端; web 服务端; 事件调度, websocket, p2p 长连接 等方面的应用和实践. 欢迎广大 golang 开发者参与本项目. ## 特性 * 利用golang轻量级协程, 高并发分段下载, 可通过调节并发数达到最佳下载速度; 下载进度状态数据持久化到磁盘, 实现软件重启后可断点续传; * 客户端本地实现简单代理, 突破百度防盗链, 将...阅读全文

2019-07-08 14:30:01 peterq

math-engine Go 实现的数学表达式解析计算引擎 math-engine

使用 Go 实现的数学表达式微型计算引擎,无任何依赖,相对比较完整的完成了数学表达式解析执行,包括词法分析、语法分析、构建AST、运行。 [Demo](http://wx3.sinaimg.cn/large/c2a95e3dly1g4i4unamlhg211o0iokk1.gif) ## TODO ### 已实现 *  加 + *  减 - *  乘 * *  除 / *  取余 % *  整数次方 ^ *  科学计数法 e.g. 1.2e7 *  括号 ...阅读全文

2019-07-08 11:30:01 dengsgo

GRBAC-storyicon 基于角色的访问控制框架 GRBAC-storyicon

Grbac是一个快速,优雅和简洁的RBAC(基于角色的访问控制)框架。它支持增强的通配符并使用Radix树匹配HTTP请求。可以在任何现有的数据库和数据结构中轻松使用它。 grbac的作用是确保指定的资源只能由指定的角色访问。请注意,grbac不负责存储鉴权规则和分辨“当前请求发起者具有哪些角色”,更不负责角色的创建、分配等。这意味着您应该首先配置规则信息,并提供每个请求的发起者具有的角色。 grbac将`Host`、`Path`和`Method`的组合视为`Resource`,并将`Res...阅读全文

2019-07-08 11:30:01 storyicon

lazydocker Docker 管理工具 lazydocker

lazydocker,一个简单的 docker 和 docker-compose 终端用户界面,用更懒惰的方式来管理所有的 docker。 其界面采用 [gocui](https://www.oschina.net/p/gocui) 开发。 #### **特点** * 可以清楚地查看 docker 或 docker-compose 容器环境的状态 * 查看容器/服务的日志 * 查看容器度量的 ascii 图 * 可以自定义图来测量任何想要测量的 * 重新启动、移除、重建容器和...阅读全文

2019-07-05 18:30:01 jesseduffield

Olivia 人工智能聊天机器人 Olivia

Olivia 是带有人工神经网络的人工智能聊天机器人。 ![image](https://static.oschina.net/uploads/space/2019/0617/141938_28Mx_4105562.png) ### 使用 要使用 REST Api,必须使用两个参数建立对 `/api/response` 的 `POST` 请求: * `sentence` 这是要发送给 Olivia 的消息 * `authorId` 这是一个任意 ID,用于标识用户进行上下文聊天 ...阅读全文

2019-07-05 18:30:01 olivia-ai

ORY Hydra OAuth2 和 OpenID Connect Server ORY Hydra

![image](https://static.oschina.net/uploads/space/2019/0627/192201_Pvxr_3734192.png) ORY Hydra 是针对低延迟,高吞吐量和低资源消耗而优化的强化 OAuth2 和 OpenID Connect Server,也就是一个 OAuth 2.0 的服务端框架,它能够发出访问、刷新和 ID 令牌。Ory Hydra 不提供用户管理(登录、注销、配置文件管理、注册),而是使用基于重定向的流和 REST API 将...阅读全文

2019-07-05 18:30:01 ory

UniOffice Go 语言的 Office 文档处理库 UniOffice

unioffice 是一个纯 Go 的开源库,实现对 Office Word、Excel 和 PowerPoint 文件的创建和处理功能。 其目标是成为一个兼容性最强,性能最好的 Go 语言 Office 文档处理库。 ![UniOffice](https://static.oschina.net/uploads/img/201905/31221621_LwmS.png) ![https://github.com/unidoc/unioffice/](https://static.oschi...阅读全文

2019-07-05 18:30:01 unidoc

rein 反向代理 IP 地址和端口 rein

**rein** 主要用于进行反向代理IP地址和端口,功能类似于 `nginx` 的 `upstream` 模式和`rinetd` 的功能,由于`rein`使用了`golang`语言开发,并且提供已经编译好的可下载版本,在部署配置方面比它们要方便些。 功能列表: 1. 反向代理`IP`和端口。 2. 提供本地文件的快速网络(`http`模式)分享。 ### **1. 简单快速部署** #### _**1.1 CentOS/RHEL/Ubuntu 平台**_ 已经编译好的版本下载地址...阅读全文

2019-07-05 12:30:01 firstboot

SCRY.INFO 区块链数据协议层 SCRY.INFO

Scry.info是区块链开源数据协议层,实现真实数据的存储,验证,共享,分析和交易。 利用Scry.info内置智能合约,对跨行业资源的分布式用户提供集群智能数据验证,并以Scry智能合约的形式在Scry平台提供调用、工具、分享和交易。 Scry.info还提供对市场端客户与开发者提供对特定行业/事件发起智能合约协议,应用于各种商业数据场景,例如体育,娱乐,农业,金融市场等的民调或交易市场。 通过区块链提供数据交换的SDK,让开发者可以快速方便的开发DAPP应用。 **主要包含这些内容**...阅读全文

2019-07-05 12:30:01 scryinfo

Kruise Kubernetes 应用负载管理 Kruise

Kruise 是 OpenKruise 项目的核心,包含一组控制器扩展和完善 [Kubernetes 核心控制器](https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/) 的应用负载管理能力。 Kruise 提供三种应用负载控制器: * [Advanced StatefulSet](https://github.com/openkruise/kruise/blob/master/docs/concepts/astat...阅读全文

2019-07-05 12:30:01 openkruise