分布式日志管理系统 OK Log
OK Log 是一个分布式且无协同(coördination-free)的日志管理系统,用于大规模集群。 这是一个预置型(on-prem)解决方案,旨在成为一种易于理解,易于操作且易于扩展的构建模块。 **部署** 小型 大型阅读全文
OK Log 是一个分布式且无协同(coördination-free)的日志管理系统,用于大规模集群。 这是一个预置型(on-prem)解决方案,旨在成为一种易于理解,易于操作且易于扩展的构建模块。 **部署** 小型 大型阅读全文
MRM,即 MariaDB and MySQL Replication Management ,是管理 MariaDB 10.x 和 MySQL&Percona Server 5.7 GTID 复制拓扑的高可用解决方案。 **主要特性** 复制监视 拓扑检测 从属掌控升级(切换) 主从选举故障检测(故障切换、转移) 复制最佳实践 旨在在多数故障情况下实现零损失 多集群管理 代理整合 (ProxySQL,MaxScale, HAProxy, Spide...阅读全文
WQS 是微博开源的消息服务中间件。 多租户支持; 多 IDC 支持; 多协议支持 memcached、http 1/2、motan 轻客户端。(去 zk 依赖、无 partition 感知) 支持 pub/sub、long polling、pipeline; 支持 TTL; 支持 filter。 WQS 目前支持多 IDC 部署,创建队列时选取响应的配置表明该队列是否需要多 IDC 功能支持,当 WQS 集群跨 IDC 部署时: Producer 通过 WQS 实例写消息会时...阅读全文
超级好用的 HTTP 文件服务器,可以通过 web 端和命令行来访问和操作文件服务器。其他特性有文件夹访问权限控制,登陆授权等。 ![WebUI](https://github.com/lexkong/grapehttp/raw/master/data/filetypes/grapehttp.gif) ![fctl file operating commands](https://github.com/lexkong/grapehttp/raw/master/data/filetypes/f...阅读全文
Tenta DNS 是一个隐私优先的 DNS 解决方案,它提供一个 DNS 服务器套件,其中包含权威 DNS 服务器,递归 DNS 服务器,以及 NSnitch,实现更安全,更可靠的上网体验。NSnitch 提供的是一个能够记录针对它的请求的 IP 地址,然后通过 JSON API 使该 IP 可用的 DNS 服务器。 Tenta DNS 还提供对 Tor Node membership、DNS 黑名单状态和地理数据的查询。 此外,Tenta DNS 内置 BGP 集成,为 DNS 任播...阅读全文
container-diff 是 Google 开源的一个分析和比较容器镜像的工具,可用来分析 Docker 镜像之间的差异。 container-diff 可通过几个不同的标准(角度)来检查镜像,包括: Docker 镜像历史 镜像文件系统 Apt 包管理器 pip 包管理器 npm 包管理器 macOS Linux 不想使用 sudo 的话还可以这样 Windows 下载 [container-diff-windows-amd64.exe](https://storag...阅读全文
golang的一个扩展包,用以方便的解析配置文件,目前很好的支持:xml,json,yaml,toml;也简单的支持:ini,但不推荐使用。 一个简单例子: 安装: GitHub地址:[https://github.com/dingdayu/golangtools/](https://github.com/dingdayu/golangtools/)阅读全文
riot 分布式全文搜索引擎, 采用 Go 语言开发。功能特性: 高效索引和搜索(1M条微博500M数据28秒索引完,1.65毫秒搜索响应时间,19K搜索QPS) 支持中文分词(使用gse分词包并发分词,速度27MB/秒) 支持逻辑搜索 支持中文转拼音搜索 支持计算关键词在文本中的紧邻距离(token proximity) 支持计算BM25相关度 支持自定义评分字段和评分规则 支持在线添加、删除索引 支持多种持久存储 支持分布式索引和搜索 可实现分布式索引和搜索 采用对商...阅读全文
BigCache 是用于在 Go 中写入千兆字节数据的高效缓存。快速,并发,逐行扫描内存缓存,以保持大量条目,而不影响性能。 BigCache 在堆上保留条目,但为它们省略了 GC。 要实现对字节数组的操作,因此在大多数用例中将需要在高速缓存前面进行条目(de)序列化。 ![image](https://static.oschina.net/uploads/space/2017/1006/075023_0fTA_2903254.png) 简单初始化 自定义初始化阅读全文
WeChat-Proxy 是微信代理服务。 1、全局缓存微信 access_token, jsapi ticket等。 2、多路转发微信回调消息。 3、简化微信 oauth2 认证流程。 4、简化微信支付流程。 5、简化微信 JSSDK 签名流程。 参数说明: key: 自定义的app名称,支持中文,也可以是随机生成的字符串。(必填) appid: 微信公众号的 appid。(必填) secret: 微信公众号的 secret。(必填) token, ae...阅读全文
Heptio Ark 是一款用于 [Kubernetes](https://www.oschina.net/p/kubernetes) 集群资源和持久存储卷(PV)的灾难恢复管理系统。 Heptio Ark 提供了一个简单、可配置和可操作的强大方法来从一系列检查点备份和恢复应用和 PV ,这允许你在以下情况更好地自动化: **减少灾难恢复 TTR(响应时间):** 基础设施损坏 数据损坏 服务中断 **Kubernetes API 对象的跨云供应商迁移** (不支持持久卷快照...阅读全文
xfrps 是从 frp 的 v0.11 版本的分支而来,是以为大量 iot 设备提供内网 NAT 映射功能为目标的版本,主要与 xfrp 配合使用,相对与 frp ,xfrps 有如下不同: 客户端必须要提供 runid,每个客户端必须对应一个独一无二的 runid 为了方便服务器端的管理,每个客户端只支持配置一个 tcp 服务 客户端无需配置 remote port ,统一有服务器端分配管理 支持 ftp 服务阅读全文
Smith 是 Oracle 发布的一个 微容器构建工具 ,使用 Golang 开发。可以通过yum仓库和(可选)RPM文件来构建微容器。另外,它还可以“微化(micro-ize)”已有的Docker容器,在开发阶段,开发人员能够使用非常友好的Docker工具来构建容器,而在生产部署的时候,Smith能够将这个容器转换为微容器。Smith按照标准OCI格式来构建镜像,但是它也可以通过Docker仓库上传和下载镜像。 ![image](https://static.oschina.net/upl...阅读全文
avg 3.2ms per article, accuracy >= 98% (对比其他开源实现,可能是目前最快的html2article实现,我们测试的数据集约3kw来自于微信公众号,各大类中文科技媒体历史文章,目前能达到98%以上准确率) 参考examples [from_url.go](https://github.com/sundy-li/html2article/blob/master/examples/from_url.go) [参考论文](http://www.doc88...阅读全文
**Sap Network Monitor** 工具分为**Server**和**Monitor**两个部分. **Server**主要负责Monitor的监控和数据收集、统计、展现,它是一个Web服务,以直观简介的界面,让管理人员进行监控和快速的定位问题。它只需要部署一台就可以了,推荐部署在Linux系统上,数据库推荐使用PostgreSQL,也可以用Mysql **Monitor**实际上是代替SAP管理人员,在SAP的客户端机器或网络内执行niping命令,来对目标路由进行时延、稳定性...阅读全文
gotgt 是在 golang 实现的简单 SCSI 目标框架,用于性能和密度。 目前还没有任何发行二进制文件,必须从源代码构建。 系统需安装 GO ,并将 gotgt 存储库克隆到 $ GOPATH 中。 没有操作目标和 LU 命令,但可以使用配置文件初始化目标 / LU ~/.gotgt/config.json,可以在这里找到一个示例。请注意,如果要使用该例子,必须确保文件 /var/tmp/disk.img 存在。阅读全文
这是一个基于 [Revel](http://revel.github.io/) 开发的在线图书馆。你可以通过 [Cali](https://github.com/jiangmitial/cali) 管理你的书籍。 它的功能有: 添加书籍 根据不同的分类查看书籍 从 douban.com 获取更多关于查看书籍的信息 下载你想阅读的书籍 在线阅读(目前仅支持epub格式) 有限的用户注册和管理功能 删除书籍 (计划中) 改变书籍的信息 (计划中) 搜索 (计划中) 其他... ...阅读全文
MinDoc 是一款针对IT团队开发的简单好用的文档管理系统。 MinDoc 的前身是 SmartWiki 文档系统。SmartWiki 是基于 PHP 框架 laravel 开发的一款文档管理系统。因 PHP 的部署对普通用户来说太复杂,所以改用 Golang 开发。可以方便用户部署和实用,同时增加Markdown和HTML两种编辑器。 开发缘起是公司IT部门需要一款简单实用的项目接口文档管理和分享的系统。其功能和界面源于 kancloud 。 可以用来储存日常接口文档,数据库字典,手册...阅读全文
Pilosa 是一个开源的分布式位图索引,可以在多个海量数据集中显著加速查询。 它主要为速度和水平扩展性而设计。如果拥有数十亿的数据并且这些数据拥有数百万的属性,而你希望弄清楚其中的关系,那么 Pilosa 可以提供帮助。阅读全文
maintainer 是一个用 go 实现的,面向项目维护者的命令行工具,希望能够实现各种对维护者友好的功能。 ![https://asciinema.org/a/117832](https://asciinema.org/a/117832.png) 目前包括: 生成 AUTHORS.md,记录所有贡献过代码的 Contributors 生成 CONTRIBUTING.md,描述为项目贡献的流程(未来希望能够根据不同语言做适配) 生成 CHANGELOG.md,根据项目的 Tag,Re...阅读全文
一个使用 golang 开发的博客生成器。 chca init 用于初始化博客,会自动生成config.yml 初始化以后需要在config.yml文件同目录下创建theme文件夹用于存放模板文件 模板文件夹结构 blog 模版文件夹 -- assets 资源文件夹 -- -- css -- -- js -- layout 布局文件夹 -- -- main.html 公共布局 -- -- index.html 主页 -- -- post.html 文章页 -- -- ar...阅读全文
frep 是一个根据模版文件生成相应的配置文件功能,相关数据可以从环境变量,json 文件,yaml文件中获取。 比如根据 nginx.conf.in 模版文件 和 动态数据 data.json,动态生成 nginx.conf 具体帮助参考:阅读全文
Gosl 是用 Go 编写的科学计算库,用于帮助科学研究软件的开发。 这个库尽可能做到通用,它使用了多线程并发技术,以及基于消息传递的并发计算。它还实现了几何计算,随机数生成和概率分布的功能和结构、优化算法以及绘图和可视化。阅读全文
一个基于 Golang 开发的用于迅速搭建并使用 WebHook 进行自动化部署和运维系统,支持:Github / GitLab / GitOsc/Gogs。 界面和开发思路参考于 [git-webhook](https://github.com/NetEaseGame/git-webhook) 。 在原作者的基础上解耦了WebHook和Server之间关系,实现了多对多关系。 因与服务器通信使用的是SSH方式,请注意保管服务器账号和密码。 同时支持 C/S 模式,配合[客户端](htt...阅读全文
mux 是对 http.ServeMux 的扩展,添加正则路由等功能。 相对于 http.ServeMux 提供了以下功能: 正则路由; 自动生成 OPTIONS; 通过与 [handlers](https://github.com/issue9/handlers) 还可以实现诸如按域名过滤等功能。阅读全文
Pgclusteradmin是一款基于go开发的postgresql集群管理工具,当前主要功能是实现对postgresql服务进行管理,主备切换进行管理;系统支持多用户,操作认证;操作人员通过浏览器从远程登录进入管理平台,前面的界面使用easyui实现。 **功能列表** 节点资料增加,编辑,删除 单一节点服务start、stop、restart、reload及显示服务状态 主备节点一键切换 **主界面说明** ![image](https://static.oschina.ne...阅读全文
Jaeger是Uber的分布式跟踪系统。 大多数现有的Zipkin兼容仪表库支持概率采样,但他们希望在初始化时配置采样率。这种方法在大规模使用时导致几个严重问题: 给定的服务几乎没有洞察采样率对跟踪后端的总体流量的影响。 在Uber,商业交通展示强烈的每日季节性; 更多的人在高峰时段乘坐。固定采样概率对于非高峰业务来说太低,而对于高峰业务又太高。 Jaeger客户端库中的轮询功能旨在解决这些问题。通过将关于适当采样策略的决定移动到跟踪后端,我们免除服务开发人员猜测适当的采样率。这还允许后...阅读全文
Seelog 是一个功能强大且易于学习的日志框架,提供灵活调度、过滤和格式化日志消息的功能。完全使用 Go 语言编写。 **有以下特性:** Xml 配置能够在不重新编译的情况下更改记录器参数 在不重新启动应用的情况下即时更改配置 可以为不同的项目文件和功能设置不同的日志配置 可调整消息的格式 同时将日志输出到多个流 选择记录器优先级策略以将性能损失最小化 Different output writers Console writer File writer Buffere...阅读全文
Pongo2gin 是一个支持 [Gin Web 框架](https://www.oschina.net/p/gin-web-framework)的 Go 模板引擎。它可以与 Gin Web 框架一起使用,并使用了 [Pongo2 模板引擎](https://www.oschina.net/p/pongo2)。阅读全文
这是一个 Sendcloud 邮件发送服务的 Go 语言封装包,可利用它在 Go 程序中通过 Sendcloud 发送邮件。 对 [SendCloud](http://sendcloud.sohu.com) 发送邮件 API 的封装,现已将 API 接口切换到了 v2 版本,如果想使用 v1 版本的 API,请 Checkout v1 Tag。 v2 版本新功能: 1、模板管理(添加、删除、更新、获取) 2、地址列表管理(添加、删除、更新、获取) 3、地址列表成员管理(添加、删除、更新...阅读全文
Faygo以全新的架构实现,它面向Handler接口开发,是支持智能参数映射与校验、支持自动化API文档的Go语言web框架。 v1.0 Go Version ≥1.8 方式一 源码下载 方式二 部署工具 ([Go to fay](https://github.com/henrylee2cn/fay)) 面向Handler接口开发(func or struct),中间件与操作完全等同可任意拼接路由操作链 支持用struct Handler在Tag标签定义请求参数信息及其校验信息 支...阅读全文
简介 以beego为基础,扩展出一个实现了权限控制的web开发平台,可以在这个基础上开发自己的应用。 截图信息如下: ![image](https://static.oschina.net/uploads/space/2017/0220/194457_jEnG_232402.png) ![image](https://static.oschina.net/uploads/space/2017/0220/194522_nOrG_232402.png) ![image](https://s...阅读全文
Beehive 是由 Go 模板引擎驱动的开源 IFTTT,一个灵活的事件和代理系统。它允许你创建自己的代理,执行由事件和过滤器触发的自动化任务。 ![image](https://static.oschina.net/uploads/space/2017/0220/105754_Mgvo_2903254.png) 功能举例: 可在 Tumblr 博客上重新发布 tweet 将传入的聊天消息转发到电子邮件帐户 温度低于某个值时,自动打开加热系统 运行 IRC bot,让你在 Je...阅读全文
Hoverfly是一个轻量的API服务模拟工具(有时候也被称作[服务虚拟化工具](http://www.infoq.com/cn/news/2013/05/Service-Virtualization))。 使用Hoverfly,您可以创建应用程序依赖的API的真实模拟。 - 创建可重复使用的虚拟服务,在CI环境中替代缓慢和不稳定的外部或第三方服务 - 模拟网络延迟,随机故障或速率限制以测试边缘情况 - 使用多种编程语言扩展和自定义, 包括Go,Java,Javascript,Pyth...阅读全文
otunnel 是一款对称的安全隧道工具。特点及优势: otunnel 为**单二进制程序**,支持多操作系统平台(GNU/Linux, Unix-like, Mac, Windows, AR等),方便拷贝/移植。 otunnel **无需配置文件**,命令行使用。通过选项分饰 **server** , **client** 角色,方便部署 otunnel 隧道是**对称设计**,支持**正、反向代理**(端口映射) 以下以反向代理为示例,介绍 otunnel 用法。 ![反向代理示意...阅读全文
用于筛选当前时间到之前指定的范围内的日志内容的小工具,支持对php慢查询日志等多行日志文件的筛选。 上例中会输出发生时间在当前时间1分钟以内的日志。 日期格式使用Go语言标准的日期时间表示方法。 ![image](https://static.oschina.net/uploads/space/2017/0120/111920_Gvma_2896879.png) 例如 `-layout '2006-01-02 15:04:05'` `-layout '...阅读全文
Manul 是 Go 应用的 vendoring utility。 **为什么需要 Manul ?** 因为其他的 vendor utilities 有以下缺点: 有些会对 go 的二进制文件和 GOPATH env 变量进行欺骗包装。你将得到一个非 go-gettable 项目,需要额外的软件来编译和运行; 有些将依赖关系的源代码复制到供应商目录中:更新依赖关系需要手动干预,并将大量修改的行直接提交到主仓库;不能通过查看仓库来告诉你的项目使用的依赖关系的版本; 必须在与提交相关联的供应...阅读全文
GoRazor 是 [Razor](https://www.oschina.net/p/razor) 视图引擎的 Go 语言移植版本。 语法:<div>Hello @strings.ToUpper(req.CurrentUser.Name)</div> ![syntax highlight](https://static.oschina.net/uploads/img/201702/05220706_V7OE.jpg)阅读全文
一直觉得 Go 没有一个好用的模板引擎,渲染 HTML 的时候特别痛苦,总有一种有力气却使不出来的感觉。 模板引擎一般有两种实现方式,一种是解析 HTML 语法树,然后根据一定的规则动态的拼接,另外一种是把模板预先生成代码,渲染模板时调用相关的函数即可。 Go 内置的 template 包使用的是第一种方式,不过很多开源项目使用的是第二种方式,比如 quicktemplate 、 gorazor 等。不过这两个可能由于设计的问题,都没有实现模板继承和模板 include ,而且有的语法个人觉...阅读全文
Grumpy 是一个 Python to Go 源代码翻译编译器和运行时,旨在替代 CPython 2.7。 关键的区别是它将 Python 源代码编译为 Go 源代码,然后将其编译为本机代码,而不是字节码。这意味着 Grumpy 没有 VM。编译的 Go 源代码是对 Grumpy 运行时的一系列调用,Go 库服务与 Python C API 类似的目的(尽管不直接支持 C API)。阅读全文
Gear 是 Go 语言下的一个轻量级、可组合、高性能的 Web 服务框架。由 [Teambition](https://www.teambition.com/) 开发,用于开发 SOA 服务层。其设计参考了 Go 生态下现有的近十款 Web 框架和 Node.js 生态的 [koa](https://github.com/koajs/koa)、[Toa](https://github.com/toajs/toa) 等框架。 **Demo**阅读全文
insta 是一款 instagram 备份工具,Golang 开发,实现 instagram 账户图片进行备份。 支持跨平台交叉编译,支持 socks5 代理和 http 代理。 **1.编译使用** **2.直接下载** 下载编译好的二进制包,解压运行。 [insta.tar.gz](https://nanjishidu.me/share/insta/insta.tar.gz)阅读全文
Samaritan 是一个开箱即用的数字货币量化交易框架,可以非常方便地部署属于自己的量化交易平台,目前已适配了 okcoin 中国、火币网、Poloniex、BTCC、中国比特币、okcoin 期货等交易所的接口,更多的交易所适配和功能特性正在陆续开发中。 ![image](https://raw.githubusercontent.com/miaolz123/samaritan/master/docs/_media/add-exchange.png) ![image](https://r...阅读全文
OAuth Middleware 是一款 OAuth 2.0 授权服务器和 Gin-Gonic 授权中间件。这个库提供了一个基于 Gin-Gonic 的 OAuth 2.0 授权服务器和一个在使用 Gin-Gonic 开发的资源服务器中可用的授权中间件。 **授权服务器使用示例** 此代码段显示如何创建授权服务器:阅读全文
Rclone 是一个用于和同步云平台同步文件和目录命令行工具。采用Go语言开发。 **特性:** MD5/SHA1检查文件完整性。 时间戳支持。 部分同步。 文件复制。 目录同步。 检查文件是否一致。 可以同步不同云平台的数据。 可选的加密。 可选的FUSE挂载。 **支持以下平台:** Google Drive Amazon S3 Openstack Swift / Rackspace cloud files / Memset Memstore Dropbox ...阅读全文
Go 程序热编译工具,提升开发效率 通过监听当前目录下的相关文件变动,进行实时编译 安装完成之后,即可使用`gowatch`命令,在当前文件执行 大部分情况下,不需要更改配置,直接执行`gowatch`命令就能满足的大部分的需要,但是也提供了一些配置用于自定义,在执行目录下创建`gowatch.yml`文件,支持的配置如下:阅读全文
OWL 是 TalkingData 公司推出的一款开源分布式监控系统 * Go 语言开发,部署维护简单 * 分布式,支持多机房 * 多维的数据模型,类 opentsdb * 支持多种报警算法,报警支持多条件组合、克隆 * 灵活的插件机制,支持任意语言编写,支持传参 * 丰富的报警渠道,邮件、微信、短信 * 原始数据永久存储 * 自带 Web 管理界面以及强大的自定义图表功能 **系统架构** ![image](https://static.oschina.net/upload...阅读全文
dogo,用 Go 语言开发的 Web 框架,高效简单。采用微内核框架,高度可定制化。可以很方便添加各种组件。阅读全文
Juliet 是一款轻量级的 Golang 中间件链接助手,将 Context(地图)对象从中间件传递到下一个。 示例: <pre>package main import ( "net/http" "log" "net" "fmt" "github.com/root-gg/juliet" ) // Juliet is a lightweight middlew...阅读全文
Gogland 是 JetBrains 公司推出的 Go 语言集成开发环境。Gogland 同样基于 IntelliJ 平台开发,支持 JetBrains 的插件体系。 目前正式版尚未发布。 ![image](https://static.oschina.net/uploads/img/201612/15230324_8ogG.png) ![image](https://static.oschina.net/uploads/img/201612/15230450_xmSA.png)...阅读全文