示例服务可以在 [examples/service](https://github.com/micro/go-micro/tree/master/examples/service) 找到。
特征
**特征
**
**包
**
**内置插件
**
**描述**
Discovery
[Registry](https://godoc.org/github.com/micro/go-micro/registry)
consul
用来沟通的一种
定位服务
...阅读全文
2016-03-21 16:00:00
micro
Lion 是一个 Go 语言的快速 HTTP 路由器,支持构建可伸缩的模块化的 REST APIs 应用。
![Lion's Hello World GIF](http://static.oschina.net/uploads/img/201603/21072501_zP7s.gif)
## 特性
*
**上下文敏感**: Lion 使用事实标准 [net/Context](https://golang.org/x/net/context) 用于存储路由参数并在中间件和 HTTP ...阅读全文
2016-03-20 16:00:00
celrenheit
gomandel是一个用go语言写的简单的mandelbrot demo。使用OpenGL+ SDL来显示,用软件来绘制Mandelbrot。
通过使用双精度点计算一个Mandelbrot,并正常化这些值,从而使得调色板均匀分布。
![image](http://static.oschina.net/uploads/space/2016/0316/171522_8hVM_2652078.png)
### 安装
运行以下代码安装:
<pre class="brush:shell;tool...阅读全文
2016-03-15 16:00:00
marijnfs
![alg tag](http://static.oschina.net/uploads/img/201603/15130717_M8y6.png)
容器应用的开发和运行离不开可靠的镜像管理。从安全和效率等方面考虑,部署在私有环境内的Registry是非常必要的。Project Harbor是由VMware公司中国团队为企业用户设计的Registry server开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界面、自我注册、HA等企业必需的功能,同时针对中国用户的特点,设计镜像复制...阅读全文
2016-03-14 16:00:00
vmware
gooverssh 是基于[gosshtool](http://www.oschina.net/p/gosshtool)的一个ssh开发包开发的一个基于ssh本地端口转发服务小应用,可以方便突破一些网络限制,如通过ssh代理访问内网数据库服务。
使用
编辑config.toml文件:
<pre class="brush:shell;toolbar: true; auto-links: false;"> [ssh]
local_bind_address = ":330...阅读全文
2016-03-13 16:00:00
scottkiss
Tile38是一个开源(MIT许可),内存地理定位数据存储,空间索引,实时地理围栏的软件。它支持各种对象类型比如纬度/经度,边镜框,XYZ tiles, Geohashes和GeoJSON。
特性:
*
Spatial index with [search](https://github.com/tidwall/tile38#searching) methods such as Nearby, Within, and Intersects.
*
Realtime [geofencing...阅读全文
2016-03-06 16:00:00
tidwall
一个通用的timewheel工具类
通用粗精度的timewheel,只启动一个timer,可监听任意多的到期时间,放入的用户数据可以是任何类型。
接口说明:
1.
Start:
开始一个timewheel ;
2.
SetCallback:
设置时间到期时的回调函数,回调函数中不可作过于耗时的操作,以免卡住timewheel的正常运行;
3.
Add:
添加需要监控的对象,务必在Start调用后再调用此接口;
4.
Stop:
停止此timewheel阅读全文
2016-03-01 16:00:00
DavidLiuXh
#
Memcached Client for Golang
golang版本的memcached客户端,使用二进制协议,支持分布式,支持连接池,支持多种数据格式
### [](https://github.com/pangudashu/memcache#特性)特性
*
支持多server集群
*
与memcached使用二进制协议通信
*
支持连接池
*
存储value支持golang基本数据类型:string、[]byte、int、int8、int16、int...阅读全文
2016-02-25 16:00:00
pangudashu
Js-geolocation 是一个 Go 开发的,使用谷歌服务的客户端地理位置服务。地理位置数据库是由 Google 维护,非常可靠。
<pre class="brush:cpp ;toolbar: true; auto-links: false;">{
"city":"cluj-napoca",
"cityLatLong":{
"lat":46.777248,
"lo...阅读全文
2016-01-06 16:00:00
gpanther
Go Commons Pool 是用 Go 实现的对象池,直接翻译自 Java 版的 [Apache Commons Pool](http://www.oschina.net/p/commons-pool).
示例代码:
<pre class="brush:cpp ;toolbar: true; auto-links: false;">//use create func
pool := NewObjectPoolWithDefaultConfig(NewPooledObjectFactory...阅读全文
2016-01-04 16:00:00
jolestar
GoWebSSH -golang 语言开发的 web server manager 服务器及命令管理/beego开源框架/WebSocket技术
![image](http://static.oschina.net/uploads/space/2015/1213/234703_AQTQ_945573.jpg)
![image](http://static.oschina.net/uploads/space/2015/1213/234715_XFqj_945573.jpg)
![image]...阅读全文
2015-12-13 16:00:00
who246
Vuvuzela 是一个消息通讯系统。可以保护消息的内容和消息元数据的私密性。用户使用 Vuvuzela 不会暴露他和谁进行通讯,即使是遭遇到强大的国家机构的时候。 [SOSP 2015 paper](https://davidlazar.org/papers/vuvuzela.pdf) 解释了这个系统,它的 threat 模型,性能,限制等等。[SOSP 2015 slides](https://davidlazar.org/slides/vuvuzela-sosp2015.pdf) 用图形介...阅读全文
2015-12-06 16:00:00
davidlazar
dgraph 是可扩展的,分布式的,低延迟图形数据库。
DGraph 的目标是提供 Google 生产水平的规模和吞吐量,在超过TB的结构数据里,未用户提供足够低延迟的实时查询。DGraph 支持 [GraphQL](http://graphql.org/) 作为查询语言,响应 [JSON](http://www.json.org/)。阅读全文
2015-12-01 16:00:00
dgraph-io
Color 是用 Go 语言编写的 ANSI Escape Codes 术语,你可以自定义屏幕的输出颜色。
![Color](https://camo.githubusercontent.com/3cef9169d42dd94bd7299782d691396027d688a4/687474703a2f2f692e696d6775722e636f6d2f63314a49306c412e706e67)
标准颜色:
<pre class="brush:js;toolbar: true; auto...阅读全文
2015-12-01 16:00:00
fatih
Go圣经中文读书笔记(你懂的):
[http://golang-china.github.io/gopl-zh/](http://golang-china.github.io/gopl-zh/)
![image](http://golang-china.github.io/gopl-zh/cover_small.jpg)
**从源文件构建:**
1.
运行go get github.com/golang-china/gopl-zh, 获取 源文件
...阅读全文
2015-11-25 16:00:00
golang-china
Nanobox 是本地开发工具,可以消除环境的复杂性,在部署和生产环境之间,进行自动化环境配置,通过虚拟化使得开发环境更简洁。
Nanobox 在轻量级 VM 中启动应用,使得本地保持与生产环境一样的配置。
主要特性:
应用源代码:专注于编码,而不需要过多关注配置一个本地开发环境。
语言引擎:此引擎可以检测你的应用类型和指定应用需要的服务,还有如何配置。
Docker 容器:配置好和安装好的容器。
Vagrant / Virtual Box:服务在统一的轻量级 Linux 虚拟机 (30m...阅读全文
2015-11-20 00:00:01
nanobox-io
Golongpoll 是 golang HTTP 的 longpolling 库,可以使构建 web pub-sub 更加容易。
基本用法:
<pre style="box-sizing: border-box; overflow: auto; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.6px; margin-top: 0px; margin-botto...阅读全文
2015-11-11 16:00:00
jcuga
nvm-windows 是 Windows 下的 Node.js 版本管理工具,有点意思的是使用 Go 编写的。
![NVM for Windows](http://static.oschina.net/uploads/img/201511/09150050_4x9i.jpg)
![Switch between stable and unstable versions.](http://static.oschina.net/uploads/img/201511/09150050_vN6w.j...阅读全文
2015-11-08 16:00:00
coreybutler
Goofys 是使用 Go 编写,基于 S3 接口的 Filey 系统。
Goofys 允许你挂载一个 s3 bucket 作为一个 Filey 系统。为什么是 Filey 系统而不是 File 系统?因为 goofys 优先考虑性能而不是 POSIX。
使用:
<pre class="brush:shell;toolbar: true; auto-links: false;">$ go get github.com/kahing/goofys
$ go install github.co...阅读全文
2015-10-19 16:00:00
kahing
Weave 创建一个虚拟网络并连接到部署在多个主机上的 [Docker](http://www.oschina.net/p/docker) 容器。
![Weave Virtual Network](http://static.oschina.net/uploads/img/201411/05072923_yhZd.png "Weave Virtual Network")
应用程序使用该网络就好像它们是插在同一个网络交换机上,无需任何配置和端口映射。容器内的服务可直接为容器外的应用所访问,而不...阅读全文
2014-11-04 16:00:00
zettio
goRBAC 为 Go 语言应用提供了轻量级的基于角色的访问控制。
该包适用于:
<pre>* 实体具有一个或多个角色
* 角色需要分配权限
* 权限需要分配给角色</pre>
因此,RBAC 具有以下模型:
<pre>* 在实体和角色之间具有多对多关系
* 在角色和权限之间具有多对多关系
* 角色可以具有父角色(权限继承)</pre>
示例代码:
<pre class="brush:cpp ;toolbar: true; auto-links: false;">import git...阅读全文
2015-06-01 16:00:00
mikespook
RequestHub 用来接收 HTTP 请求,并在浏览器显示请求详细信息,然后将请求转发到指定 URL。你可以把当它当成是一个 HTTP 的代理服务。
使用方法:
<pre class="brush:shell;toolbar: true; auto-links: false;">$ requesthub -h
Usage of requesthub:
-config="": YAML Configuration File
-p=54321: which por...阅读全文
2015-06-24 16:00:00
kyledayton
Pingo 是一个用来为 Go 程序编写插件的简单独立库,因为 Go 本身是静态链接的,因此所有插件都以外部进程方式存在。Pingo 旨在简化标准 RPC 包,支持 TCP 和 Unix 套接字作为通讯协议。当前还不支持远程插件,如果有需要,远程插件很快会提供。
使用 Pingo 创建一个插件非常简单,首先新建目录,如 "plugins/hello-world" ,然后在该目录下编写 main.go:
<pre class="brush:cpp ;toolbar: true;...阅读全文
2015-04-27 16:00:00
dullgiulio
要在移动的网络中可靠的上传文件真的是一件非常难的事情,因为移动网络不稳定、设备和浏览器 API 都很那实现可恢复的上传协议。
而 tus 就是这样的一个开源项目,创建了一个开放的协议实现了客户端和服务器之间可恢复的文件上传协议。阅读全文
2013-04-17 16:00:00
github
_Orchestrator_
是 MySQL 复制拓扑管理和可视化工具,支持:
*
检测和审查复制集群
*
安全拓扑重构:转移服务于另外一台计算机的系统拓扑S
*
整洁的拓扑可视化
*
复制问题可视化
*
通过简单的拖拽修改拓扑
*
维护模式声明和执行
*
审计操作
重构拓扑只需要简单的拖拽。Orchestrator 会保证安全,并且禁止非法复制拓扑。
![orchestrator-co-masters](http://static.oschina.net/uploa...阅读全文
2014-07-29 16:00:00
outbrain
IP resolver 是一个使用 Go 语言开发的命令行 IP 查询工具。它可以通过多个 DNS 服务器解析一个域名的 IP 地址,并显示各个 DNS 服务器的查询结果,便于观察不同 DNS 服务器在A记录解析上的不同之处。
![Screenshot of IP resolver](http://static.oschina.net/uploads/img/201510/03193640_zBDy.png)
## 创建可执行文件
IP resolver 依赖 _github.com/mi...阅读全文
2015-10-02 16:00:00
m3ng9i
Godi 是一个用来检查 Go 程序包依赖哪些其他包的命令行工具,调用 go list 命令获取包依赖信息。
例如执行 godi log 的输出是:
<pre>fmt
io
os
runtime
sync
time</pre>阅读全文
2015-10-02 16:00:00
m3ng9i
V2Ray 是一个科学上网工具包,用于简化和复用其它科学上网工具,加速二次开发。
“V2”来源于 [V2 火箭](https://zh.wikipedia.org/wiki/V-2%E7%81%AB%E7%AE%AD),Ray 即射线,意指新一代的科学上网工具。
##
主要特点
*
多对多服务器支持,负载均衡
*
支持多用户
*
开放协议支持,兼容流行的科学上网工具
##
捐赠
目前 V2Ray 还在早期开发阶段,暂时没什么可用性,也谈不上捐赠。如果你执意想捐...阅读全文
2015-09-27 16:00:00
v2ray
Golog 是简单的golang日志,基于golang内置log封装.
**特征**
1.
实现各种日志 level: DEBUG, INFO, WARN, ERROR
2.
实现各种日志 handlers: ConsoleHander, FileHandler, RotatingHandler
**代码实例**
<pre class="brush:cpp; toolbar: true; auto-links: false;">// rotating hander,...阅读全文
2015-09-16 16:00:00
jander
Flynn 是一个开源的 PaaS 系统,由 [Docker](http://www.oschina.net/p/docker) 开发。采用 Go 语言编写。支持数据库包括 Postgres、Redis 和 MongoDB. Flynn 使用完全组件化模块化的设计,任何一个组件和模块都可以独立的进行替换。
![image](http://static.oschina.net/uploads/img/201307/18084920_RY2K.gif)阅读全文
2013-07-17 16:00:00
github
ssh-chat 是一个使用 Go 语言编写的定制 SSH 服务器,当你连到该服务器时就会进入聊天模式,就好像以前的终端 BBS 系统一样。
你可以通过下面命令来尝试该服务:
<pre class="brush:shell;toolbar: true; auto-links: false;">$ ssh chat.shazow.net</pre>
使用方法:
<pre class="brush:shell;toolbar: true; auto-links: false;">Usage:...阅读全文
2014-12-13 16:00:00
shazow
在接触 Go 语言之后,对这门编程语言非常着迷,期间也陆陆续续开始一些帮助国内编程爱好者了解和发展 Go 语言的工作,比如开始录制视频教程[《Go编程基础》](http://www.oschina.net/p/go-fundamental-programming)。但由于目前国内并没有比较好的 Go 语言书籍,而国外的优秀书籍因为英文的缘故在一定程度上也为不少 Go 语言爱好者带来了一些学习上的困扰,不仅为了加快扩散 Go 爱好者的国内群体,同时充分贯彻
[Asta谢](http://my....阅读全文
2013-04-13 16:00:00
Unknwon
Revel 是 Go 语言的框架,其思路完全来自 Java 的 [Play Framework](http://www.oschina.net/p/play-framework)。
控制器示例:
<pre class="brush:cpp; toolbar: true; auto-links: false;">// app/controllers/app.go
type Application struct {
*rev.Controller
}
func (c Application...阅读全文
2012-09-05 16:00:00
robfig
GoTTY 是个简单的命令行工具,可以把 CLI 工具共享成 Web 应用。GoTTY 可以把终端作为 Web 应用共享。
![gotty](http://static.oschina.net/uploads/img/201508/18163357_pFVk.gif)阅读全文
2015-08-19 02:20:47
yudai
Gor 是用 Go 编写的简单 HTTP 流量复制工具,主要是为了从生产服务器返回流量到开发环境。使用 Gor 可以在实际的用户会话中测试代码。
Gor 基础工作流:
![Diagram](http://static.oschina.net/uploads/img/201507/21161205_ezre.jpg)
从端口捕获流量:
# Run on servers where you want to catch traffic. You can run it on e...阅读全文
2015-08-02 14:24:59
buger
Caddy 是一个支持 HTTP/2 的跨平台 Web 服务器,使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6, Markdown, WebSockets, FastCGI, 模板等等。
一个 Caddy 配置示例:
http://www.oschina.net # Your site's address
ext .html # Clean URLs
errors {
log ../errors.log # Error l...阅读全文
2015-05-29 01:56:28
mholt
# gonix
Clones of the *nix tools written in go
# Status
If a program is marked complete, then most/all the standard features are implemented.
* basename [works]
* cat [works]
* cp [works, very incomplete]
* dirname [**complete**]
* echo [wo...阅读全文
2015-05-09 04:13:27
polegone
godebug 是一个与众不同的 Go 程序调试工具,传统的编译型语言调试器使用底层系统调用并读取二进制文件用于调试各类符号。使用起来很麻烦而且很难移植。
godebug 使用不同的方法,直接把源码作为目标程序,在每一行插入调试代码,然后编译并运行。结果就是一个全功能的调试器,完全可以移植到不同平台。事实上,由于有了 gopherjs ,你也可以在浏览器上进行调试。
例如可通过` _ = "breakpoint"` 来插入断点,然后通过 `$ godebug run gofiles....阅读全文
2015-04-22 01:28:16
mailgun
Go terminal dashboard. Inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib), but purely in Go.
Cross-platform, easy to compile, and fully-customizable.
__Demo:__ (cast under osx 10.10; Terminal.app; Menlo Regular 12pt.)
<...阅读全文
2015-03-28 11:13:48
gizak
# ![bleve](http://www.blevesearch.com/img/bleve-icon-placard-small.png) bleve
modern text indexing in go - [blevesearch.com](http://www.blevesearch.com/)
Try out bleve live by [searching our wiki](http://wikisearch.blevesearch.com/search/).
...阅读全文
2014-11-19 05:44:57
mschoch
完全Go语言实现的 Go Debugger。
这玩意很NB。
## Features
- Attach to an already running process
- Launch a process and begin debug session
- Set breakpoints, single step, step over functions, print variable contents, print thread and goroutine information...阅读全文
2014-11-16 05:00:32
derekparker
专业的跨平台开源系统监控项目,go语言编写,灵活的模板和表达式配合上各种collector可以监控任何应用或系统级的运行数据,比 zabbix更轻量级、更易入手和更适合定制。
## 使用 ##
bosun [-c=dev.conf] [-t]
-c specifies the config file to use, defaults to dev.conf. -t parses the config file, validates it, and exits.
## 截图 #...阅读全文
2014-11-15 12:26:58
mjibson
该包使得 Go 应用程序能够像 Unix 中的 pipe 一样使用。
The pipe Go package offers an easy way for Go programs to make use of other applications available in the system via a Unix-like pipeline mechanism. The input and output streams in such pipelines do work as strea...阅读全文
2014-11-10 01:19:02
niemeyer