更快捷式 JSON 序列操作 ffjson
ffjson 为 Go 结构产生 MarshalJSON 和 UnmarshalJSON 功能 。新 生成的 功能,减轻了进行序列化时对 运行反射的依赖,速度比之前更快 2 至3倍。 在 ffjson 不能识别 涉及 类型 的情况下,它会回退到 encoding/json,这意味着 ffjson 是安全替代原件。 通过使用 ffjson,您的 JSON 序列化 只会越来越快,因为没有额外代码 更改。 当你改变 struct 时,你需...阅读全文
ffjson 为 Go 结构产生 MarshalJSON 和 UnmarshalJSON 功能 。新 生成的 功能,减轻了进行序列化时对 运行反射的依赖,速度比之前更快 2 至3倍。 在 ffjson 不能识别 涉及 类型 的情况下,它会回退到 encoding/json,这意味着 ffjson 是安全替代原件。 通过使用 ffjson,您的 JSON 序列化 只会越来越快,因为没有额外代码 更改。 当你改变 struct 时,你需...阅读全文
blas 是一款开发包收集器,为 Go 语言提供 BLAS 功能 。 安装: <pre class="brush:java;toolbar: true; auto-links: false;">go get github.com/gonum/blas</pre> BLAS C-绑定: 如果你想使用 OpenBLAS,可在任何目录安装(更多信息,可在 [cgo command documentation](http://golang.org/cmd/cgo/)中查看):...阅读全文
go-freeling 是Golang 自然语言处理器。 特性: * 文字符号化 * 拆分句子 * 形态分析 * 后缀处理,附着词素代词的标记化 * 灵活的多 字识别 * 收缩裂缝 * 未登录词类别的概率预测 * 命名实体 检测 * 词性标注 * 基于图表的 浅层分析 * 命名实体分类(使用外部库MITIE - [https://github.com/mit-nlp/MITIE](https://github.com/m...阅读全文
plot 是绘制与可视化数据的存储库,它提供了一个API,用于在Go中建立和绘制plot。 gonum/plot 被分成几个开发包: * plot包提供简单的界面布局的接口,并绘制它提供了原函数。 * 绘图仪 包提供了一组标准的绘图仪,它使用由plot提供的原函数绘制线, 散点图 ,箱线图,误差线等。 * 你不需要通过使用绘图仪包来利用gonum/plot, 自定义 绘图仪的教程,可在维基中查看。 * plotut...阅读全文
pgclimb 是从 PostgreSQL 中以不同形式将数据导出的工具。 特点: * 导出数据至 [JSON](https://github.com/lukasmartinelli/pgclimb#json-document) , [JSON Lines](https://github.com/lukasmartinelli/pgclimb#json-lines) , [CSV](https://github.com/lukasmartinelli/pgclimb#csv-a...阅读全文
regression 是Go 的多元线性回归。 用法举例: 导入安装包,创建一个回归和数据,并添加进去。你可按照你的需要添加变量,下面实例中我们使用三个变量: <pre class="brush:java;toolbar: true; auto-links: false;">package mainimport ( "fmt" "github.com/sajari/regression")func main() { r := new...阅读全文
Imposm 是OpenStreetMap的数据接口。它读取 PBF 文档,并把数据导入 PostgreSQL/PostGIS,它同样可更新不同文件夹中的 DB 。 它的创建是为渲染优化数据库(如,为 WMS 服务产生tiles )。 特点: * 高性能 * 多形式支持 * 自定义数据库模式 * 广义几何学阅读全文
Copier 是 Golang 的复制版,它从一个结构复制到了另一个结构。它具有以下特点: * 如果名字匹配,就从一个场景复制到另一个场景 * 如果方法名和场景名匹配,就从方法复制到场景 * 如果场景名和方法名匹配,就从场景复制到方法 * 从片复制到片 * 从结构复制到片 示例代码: <pre class="brush:cpp ;toolbar: true; auto-links: false;">import . "github.com/jinzhu/copier"...阅读全文
Teleport是一款适用于分布式系统的高并发API框架,它采用socket全双工通信,实现S/C对等工作,支持长、短两种连接模式,支持断开后自动连接与手动断开连接,内部数据传输格式为JSON。 #### 框架模型 ![image](http://static.oschina.net/uploads/img/201601/18173110_0zdr.png) ####阅读全文
Docker on FreeBSD 是 Docker 在 FreeBSD 系统上的移植版本。Docker 原本是为 Linux 所开发设计,而最新的 FreeBSD 11-CURRENT 和 10.2 将提供对 Docker 的支持。该系统严重依赖 ZFS、jail 以及 64位的 Linux 兼容层。 安装和使用方法: <pre class="brush:shell;toolbar: true; auto-links: false;"># pkg install docker-freebs...阅读全文
GoWork 是一个库,用于封装和发送 Work 给 Workers。 特性: * Worker 注册/验证 * Work 封装和跟踪 * 内置的 Work 队列 * 基于事件的处理函数(例如当工作完成是运行功能,等等)阅读全文
## MiniCDN 一般来说会推荐采用 qiniu 或者 upyun,又或者是 amazon 之类大公司的 cdn 服务,不过当需要一些自己实现的场景,比如企业内部软件的加速,就需要一个私有的 CDN 了。 极简内容分发系统是我在公司里面的一个项目,最近把他开源出来了。可能其他企业或者组织也需要一个类似的东西。 通常来说 CDN 分为 push 和 pull 两种方式,push 比较适合大文件,pull 适合小一些的文件,但是使用起来比 push 要简单的多。 MiniCDN 采用...阅读全文
gotk3 提供 Go 绑定 GTK+3 和依赖的其他项目。每个组件都给出了用来导入包路径的子目录。以下是部分已经实施的支持库: * GTK+3 (3.6 and later) * GDK 3 (3.6 and later) * GLib 2 (2.36 and later) * Cairo (1.10 and later) 已经采取谨慎的内存管理与Go的垃圾收集器无缝工作,而无需使用或理解图形对象的浮动参考。 简单示例: <pre class="brush:cpp ;toolba...阅读全文
judger是Goj判题系统中的判题服务器部分,服务器由Go语言开发,沙箱由C语言开发 1. 目前支持断言模式判题 2. 支持TCP协议通讯 3. 支持基于HTTP协议的JSONRPC协议通讯 4. 同时支持Linux服务器、Windows服务器(Mac服务器暂时未支持) 5. 执行器支持Linux系统和Windows系统 6. 执行器在Linux系统上支持沙箱模式 7. 沙箱可配置系统调用(Syscall)白名单列表 8. 提...阅读全文
taiji 是一个 kafka 的 consumer 实现,可以支持从 kafka 拉取消息,并使用 http 协议发送至多个下游,特别适合 php 类无常驻进程的架构体系。阅读全文
xurls 可以从纯文本中使用正则表达式提取 URL。 <pre class="brush:shell;toolbar: true; auto-links: false;">go get github.com/mvdan/xurls</pre> 使用示例 <pre class="brush:cpp;toolbar: true; auto-links: false;">import "github.com/mvdan/xurls" func main() { xurl...阅读全文
Echo 是个快速的 HTTP 路由器(零动态内存分配),也是 Go 的微型 Web 框架。 ## 特性 * 快速 HTTP 路由器,智能优先 * 可扩展中间件,支持: * `echo.MiddlewareFunc` * `func(echo.HandlerFunc) echo.HandlerFunc` * `echo.HandlerFunc` * `func(*echo.Context) error` * `func(http.Handler) http.Handler` *...阅读全文
GRequests 是 [Requests](http://www.oschina.net/p/requests) 库的 Go 版本。 ### 特性 * 内置异步和同步函数 * 不依赖于外部库 * 支持 Go 1.3 + 版本 * 响应可以序列化为 JSON 和 XML 格式 * 简单文件上传 * 简单文件下载 * 支持 HTTP verbs `GET, HEAD, POST, PUT, DELETE, PATCH, OPTIONS` ### 安装 `go get -u gi...阅读全文