Go语言中文网 为您找到相关结果 469

Go Web 框架Macaron

Macaron 是一个具有高生产力和模块化设计的 Go Web 框架。框架秉承了 Martini 的基本思想,并在此基础上做出高级扩展。 ##主要特性 - 支持子路由的强大路由设计 - 支持灵活多变的路由组合 - 支持无限路由组的无限嵌套 - 支持直接集成现有的服务 - 支持运行时动态设置需要渲染的模板集 - 支持对模块的轻松接入与解除 - 采用 inject 提供的便利的依赖注入 - 采用更好的路由层和更少的反射来提升执行速度 ...阅读全文

开源项目 2014-11-07 04:55:55 无闻

纯golang开发的强大灵活的爬虫系统digger

[Digger](https://github/hetianyi/digger)是用纯[Golang](https://golang.org)开发的配置式分布式跨平台爬虫系统,支持使用Javascript编写插件来实现各种你想要达到的目标。Digger及相关组件能够以极低的资源开销运行在各种廉价服务器和开发板上,如树莓派。 Digger没有复杂的依赖,部署十分简单,支持Linux和Windows平台,目前支持的CPU架构有:```amd64```, ```arm```, ```arm64``` 您可以在 [Demo演示环境](https://demo.diggerit.me/) https://demo.diggerit.me 快速体验功能。 > 由于资源有限,请合理使用演示环境,...阅读全文

开源项目 2020-09-09 13:41:04

Go后台管理系统Gfast 管理系统

基于GF(Go Frame)的后台管理系统 前端采用ruoyi-ui 、Vue、Element UI。 后端采用GO语言 框架 GF(Go Frame)。 本项目由奇讯科技团队开发。 内置功能 - 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 - 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。 - 岗位管理:配置系统用户所属担任职务。 - 菜单管理:配置系统菜单,操作权限,按钮权限标识等。 - 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。 - 字典管理:对系统中经常使用的一些较为固定的数据进行维护。 - 参数管理:对系统动态配置常用参数。 - 操作日志:系统正常操作日志记录和查询;系统异常信...阅读全文

golang-2018优秀开源框架和库

作者:承诺一时的美丽链接:https://www.jianshu.com/u/6719426bf97e來源:简书音频和音乐用于操纵音频的库。flac - Native Go FLAC解码器。flac - Native Go FLAC解码器。gaad - Native Go AAC比特流解析器。go-sox - 用于go的libsox绑定。go_mediainfo - 用于go的libmediainfo绑定。gosamplerate - 用于go的libsamplerate绑定。id3v2 - Go的快速稳定的ID3解析和编写库。malgo - 迷你音频库。minimp3 - 轻量级MP3解码器库。mix - 用于音乐应用的基于序列的Go-native音频混音器。mp3 - Native Go...阅读全文

博文 2019-01-25 15:34:48 西门厌

CLI:使用Go开发命令行应用

文地址 CLI或者“command line interface”是用户在命令行下交互的程序。由于通过将程序编译到一个静态文件中来减少依赖,一次Go特别适合开发CLI程序。如果你编写过安装时需要各种依赖的CLI程序你就知道这个是有多重要了。   在这篇博客中我们将介绍使用Go开发CLI的基本知识。 Arguments    大多数CLI程序都需要输入一些参数。Go 语言将这些参数以字符串slice处理。 var Args []string 查找当前应用的名字。 package main import ( "fmt" "os" ) func main() { // Program Name is always the first (implicit) argument cmd := os.Ar...阅读全文

博文 2016-08-29 12:00:01 hitandrew

统计redis中某类key的数量,代替keys指令

redis使用过程中会存在查询某类key的数量问题,较简单的办法为通过redis-cli结合keys进行操作,由于keys的工作机制导致线上一般禁用该指令,以下shell脚本通过scan实现统计功能。#!/bin/bashA=$0B=${A##*/}C=${B%.*}running_file_name=$Crunning_flag="run.$running_file_name"REDIS_CLIENT='redis-cli -h 0.0.0.0 -p 6379 -x'function process { echo $0 index=-1 count=0 step=100000 while ((index!=0)) do if [ $index -le 0 ];then index=0 fi...阅读全文

博文 2018-08-17 10:52:54 hansegod

游戏分布式服务器gonet

gonet 游戏服务器架构,mmo架构,分布式snowflake64为整形uuid,ai行为树,配置data,游戏大部分都在内存运算,分布式缓存redis。 设计之初,建立在actor模式下的;rpc,以及消息驱动,rpc无需注册,支持int,数据,struct(struct必须要注册结构题即可);sql封装简单的orm,具体看demo websocket模式下,要在net,websocket注视掉如下代码:https://studygolang.com/articles/14842 代码除了mysql,protobuf,redis这几个第三方库以外,其他都是自己写的,方便性能和修改,主动权在自己手里 服务器之间rpc,客户端服务器之间protobuf + rpc,客...阅读全文

开源项目 2019-01-16 12:53:57 ylb

golang的cmd包使用例子

使用案例代码: package main import ( "bytes" "fmt" "log" "os/exec" ) func main() { cmd := exec.Command("php", "D:/baiduyun/command/application/cli", "read") var out bytes.Buffer cmd.Stdout = &out err := cmd.Start() if err != nil { log.Fatal(err) } log.Printf("Waiting for command to finish...") fmt.Println(cmd.Args) err = cmd.Wait() if err != nil { log.Pri...阅读全文

博文 2014-10-04 19:27:25 chen yuwen

Golang 在 Baidu-FrontEnd 的应用之路

百度资深工程师陶春华在 QCon 北京 2016 上分享了《Golang 在 Baidu-FrontEnd 的应用》这一话题,以 Baidu-FrontEnd 的重构历程为主线索,展示了在设计海量接入前端中的权衡以及对语言的考虑。百度日请求量在 700 亿以上,面对如此庞大的前端页面访问量,百度如何处理数据拥堵现象?本次分享以 Baidu-FrontEnd 的重构历程为主线索,展示在设计海量接入前端中的权衡以及对语言的考虑。首先要解决的就是 GO 语言难以克服的“先天不足”缺陷——GC(Gabage Collection)延迟造成的关键问题,其次就是如何合理的设计软件架构,来协调稳定性与可扩展性之间的矛盾。最后讨论采用 GO 语言 HTTP 类库所面临的协议一致性问题。作者介绍陶春华,百度资...阅读全文

博文 2016-11-18 05:00:01 u012798391

游戏分布式服务器pitaya

Pitaya是一款易于使用,快速且轻量级的分布式游戏服务器框架 Pitaya is an simple, fast and lightweight game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK. It provides a basic development framework for distributed multiplayer games and server-side applications. Getting Started Prerequisites Go >= 1.10 e...阅读全文

开源项目 2019-01-31 10:14:52 topfreegames

NGD (NEO Global Development) 9月月报

上个月,基于社区反馈NGD发布了新版月报,受到了广泛好评。本月我们将继续沿用相同形式发布月报。感谢社区一直以来给予的反馈和贡献。以下为2018年9月NGD月报:重要事件NEO-CLI 2.9.0与Akka框架本月我们发布了NEO和NEO-CLI 2.9.0。NEO 2.9.0的最大特点是使用了Akka框架。Akka使用Actor模型来克服传统面向对象编程模型的局限性,并能够应对高并发分布式系统所带来的挑战。并且此次新版本将NEO-CLI的一些附加功能独立封装在插件中用以调用,目的是为了提升节点的安全性、稳定性和灵活性。用户可以自行选取所需要的扩展功能而不用每次在启动NEO-CLI时通过繁冗的指令来调用,避免了很多人为的操作失误,同时简化了打开钱包、调用applicationlogs 等一系列...阅读全文

博文 2018-10-07 18:34:43 NEO爱好者

awesome-go

https://awesome-go.com/ Awesome Go A curated list of awesome Go frameworks, libraries and software. Inspired by awesome-python. Contributing Please take a quick gander at the contribution guidelines first. Thanks to all contributors; you rock! If you see a package or project here that is no longer maintained or is not a good fit, please submit a pu...阅读全文

博文 2016-12-20 13:00:02 andylau00j

WebRTC服务器搭建

前言 最近研究了几天 appr.tc 服务器的搭建,主要目的是想在本地搭建一套 webrtc 服务器环境,可以做一些webrtc相关的实验。 经过几天的折腾,得到以下几点结论: 一、最新的 appr.tc服务器是不能使用 非 https服务的。主要有两种原因:1. chrome浏览器不支持在非https方式下打开音/视频设备。2. appr.tc中的信令服务器(collider)不支持非 https 服务。 二、appr.tc服务器的搭建仅支持浏览器之间互通,移动端与浏览器之间是无法互通的,主要是ssl 证书问题。如果那位对 ssl证书比较熟悉的话,可以与我联系,咱们一起再重新做个实验。 下面我就来描述一下如何搭建 appr.tc 服务。 几个重要的库 在具体介绍 appr.tc服务如何搭建...阅读全文

博文 2018-09-12 19:34:39 音视频直播技术专家

etcd 使用小记

咱们这不讲安装, 只讲使用. etcd,consul 都是分布式KV, 一般用于服务发现; 1 注册服务 这里使用 etcd.clientv3搞事情, GoDoc在 这, 以下是伪代码 // key 随你制定, 只要能标识是那个服务器(比如 root/game/node_1)即可. value 可以包含addr, 状态, 优先度等信息 client.OpPut(key,value) 这里的小提示: 最好实现健康检查, 再好的代码也有跑不动的一天, 好像etcd的健康检查只支持ttl(服务向etcd定时重新PUT), 所以记得设置TTL并整一个Tick定时执行以上代码吧. 不过consul支持两种健康检查, 一种是ttl, 一种是consul主动去检查服务状态(详情看最底下 ↓ 的参考), 个...阅读全文

博文 2017-06-07 06:07:03 bysir

go语言开发有哪些工具

Go语言在并发编程方面比绝大多数语言要简洁不少,这一点是其最大亮点之一,也是其在未来进入高并发高性能场景的重要筹码。本篇文章主要是给大家介绍一些go语言开发的开源工具! 1、Go Reviverevive 是一个 Go 语言的代码质量检测工具(Linter for Go),具有快速、可配置、可扩展、灵活和美观等特性,可作为 golint 的替代方案。虽然 golint 很受欢迎,但是 revive 提供了更多新功能,值得你去花时间研究,例如,它运行得更快(最高可达6x!),允许使用 TOML 文件配置 linting 规则,并提供更多规则。2、Go Callvis一定要收藏这个可视化工具,你可以使用 Go Callvis 来可视化 Go 程序的调用图。这个开发工具有一个使用HTTP服务器的交...阅读全文

博文 2019-03-28 21:34:40 QFdongdong

Go 网络编程示例

示例:并发时钟服务器 本节介绍 net 包,它提供构建客户端和服务器程序的组件,这些程序通过 TCP、UDP 或者 UNIX 套接字进行通信。网络服务 net/http 包是在 net 包的基础上构建的。 时钟服务器 这个示例是一个时钟服务器,它以每秒一次的频率向客户端发送当前时间: package main import ( "io" "log" "net" "time" ) func main() { listener, err := net.Listen("tcp", "localhost:8000") if err != nil { log.Fatal(err) } for { conn, err := listener.Accept() if err != nil { log.Pr...阅读全文

博文 2019-05-12 23:35:18 骑士救兵

使用gofmt格式化代码

对于一门编程语言来说,代码格式化是最容易引起争议的一个问题,不同的开发者可能会有不同的编码风格和习惯,但是如果所有开发者都能使用同一种格式来编写代码,开发者就可以将宝贵的时间专注在语言要解决的问题上。 gofmt介绍 Golang的开发团队制定了统一的官方代码风格,并且推出了gofmt工具(gofmt或go fmt)来帮助开发者格式化他们的代码到统一的风格。gofmt是一个cli程序,会优先读取标准输入,如果传入了文件路径的话,会格式化这个文件,如果传入一个目录,会格式化目录中所有.go文件,如果不传参数,会格式化当前目录下的所有.go文件。 gofmt默认不对代码进行简化,使用-s参数可以开启简化代码功能,具体来说会进行如下的转换: 去除数组、切片、Map初始化时不必要的类型声明: 如下形...阅读全文

博文 2018-07-17 13:34:43 simpleapples

HMP,打通Hexo和小程序的博客框架

本文属于原创,转载注明出处,欢迎关注微信小程序小白AI或者网站 https://xiaobaiai.net image 1 起因 开门见山,本人的目标是个人博客系统,实现发布博文、博文分类管理、打通PC Web端与移动端小程序的博文数据共享,实现小程序端的主题自定义开发,让更多喜欢写博客,努力学习的同学们专心学习,专心写博客。 开发这个个人博客框架之前,前前后后折腾了不少静态博客系统,最早在2013年自己购买阿里云云主机建站,买域名,然后搭建WordPress博客系统和论坛,那时候还是个大三学生,没有多少钱,虽然折腾成功了,最后还是因为没有续费而不了了之了。但是写博客,拥有自己的博客天地的作死心一直没有改变,后面使用Github的Pages服务搭了一个静态网站,那时候喜欢折腾主题,去喜欢定制...阅读全文

博文 2019-10-06 13:32:47 aside section ._1OhGeD

后台管理gpadmin

这个项目是以Gin框架为基础搭建的后台管理平台,虽然很多人都认为go是用来开发高性能服务端项目的,但是也难免有要做web管理端的需求,总不能再使用别的语言来开发吧。所以整合出了GinAdmin项目,请大家多提意见指正!欢迎 star ⭐⭐ ![logo](https://static.studygolang.com/210727/a39535af4ee2a61e6a6f55265117e6d4.jpg) ![logo](https://static.studygolang.com/210727/9e444b2e2e98a5a81e6d812d3668e71c.jpg) ## 依赖 * golang > 1.8 * Gin * BootStrap * LayUi * W...阅读全文

开源项目 2021-07-27 22:16:38 gphper

Golang 中的微服务-第 4 部分-使用 JWT 做认证

在之前的文章里,我们创建了一个用户服务,保存了一些用户。现在我们看下如何在用户服务中安全的保存用户密码,同时,通过微服务写几个功能,来验证用户,发布安全令牌。 注意,我现在已经把我们的服务拆分到几个不同的仓库里。 我觉得这样部署起来容易些。 最开始我打算做成一个单独的仓库,但是发现用 Go 的 dep 管理有点麻烦,有很多冲突。我也会说明下如何独立地运行和测试微服务。 遗憾的是,用这种方法我们就不能用 docker-compose 了。 不过目前用起来还不错。如果你在这方面有什么建议,可以[给我发邮件](ewan.valentine89@gmail.com)! 现在你要手动启动数据库: ``` $ docker run -d -p 5432:5432 postgres $ docker ru...阅读全文

博文 2018-03-03 20:17:08 ArisAries

用 Golang 处理数据库迁移

最近在 `r/reddit` 中不断出现 ***我如何使用 Go 来完成数据库迁移?*** 对于我和大多数人这种从其他语言例如 PHP 或是 Ruby 转到 Go 的人来说,数据库迁移在这些语言上已经不是什么问题了。例如 Ruby 的 Rails 和 PHP 的 Laravel。但我如何在 Go 中复制这种功能呢?同时考虑到框架是 Go 中的反模式这一事实。 举个例子,在在 Rails 和 Laravel 中可以非常轻松的使用 `bin/rails db:migrate` 或者 `php artisan migrate` 命令作为部署流水线的一个步骤来运行。但是同样的功能如何在 Go 应用中实现呢? 已经有许多的库被创建来解决 Go 的这一问题 , 但是目前来说 [migrate libra...阅读全文

博文 2019-01-27 10:53:37 polaris

分布式无锁站点健康检查工具 Checkup

Checkup是源码分析 Startup 新推出的站点健康检查工具,自带美观的状态页面 。 ![image](http://static.oschina.net/uploads/img/201608/07080938_c9AC.png) Checkup  是用Go写的分布式的,无锁的,自托管的 健康检查工具和 状态页面 。它拥有一个优雅,简约的CLI和一个地道的Go 库,他们是完全可互操作的,他们的配置是精美对称的。 ** 简介: ** Checkup  可以定制随时检查您的任意网站,从任何基础设施使用自己选择的任何存储供应商。状态页可以定制您自己的喜好,你可以无论你是否想做的检查。 开箱即用, Checkup  目前支持: * 检查HTTP端点 ...阅读全文

开源项目 2016-08-29 04:00:01 sourcegraph

golang开发中 redis连接池的使用

作为一个phper,第一次听到连接池还有点蒙圈,转golang开发后连接池的概念会经常使用。 一、连接池是什么 连接池是什么?一个服务端资源的连接数量都是有限的,每次初始化时他建一定数量的连接,先把所有连接存起来,谁要用则从里面取,用完后放回去。如果超出连接池容量,要是排队等着或么直接丢弃。 比如我们做开发中常用的mysq,redis,php-fpm的配置 1,redis服务端设置 maxclients 最大连接数设置 2, mysql服务端设置 max_connections 最大连接数 3,PHP-FPM 服务端设置 max_children 最大子进程数 start_servers 起始进程数 我们golang开发时连接redis用到自己设计的连接池概念,想要达到的效果是什么? 1,最...阅读全文

博文 2020-01-13 21:32:47 小手25

分布式爬虫ants

### 由来 一直用[scrapy](https://github.com/scrapy/scrapy)抓数据,scrapy的分布式部署,需要⼈人⼯工分配抓取链接。 所以参考scrapy的爬⾍虫架构和[elasticsearch](https://github.com/elastic/elasticsearch)的分布式架构。 编写了分布式的爬⾍虫[ants](https://github.com/wcong/ants-go), 目前是alpha,欢迎大家来试用 ### 功能 * 分布式:master分配request给各个node,node将抓取的结果,产⽣生的新request返回给master node * web api:提供json格式的web api,开...阅读全文

开源项目 2015-03-22 09:08:47

Go代码格式化

对于一门编程语言来说,代码格式化是最容易引起争议的一个问题,不同的开发者可能会有不同的编码风格和习惯,但是如果所有开发者都能使用同一种格式来编写代码,开发者就可以将宝贵的时间专注在语言要解决的问题上。 gofmt介绍   Golang的开发团队制定了统一的官方代码风格,并且推出了gofmt工具(gofmt或go fmt)来帮助开发者格式化他们的代码到统一的风格。gofmt是一个cli程序,会优先读取标准输入,如果传入了文件路径的话,会格式化这个文件,如果传入一个目录,会格式化目录中所有.go文件,如果不传参数,会格式化当前目录下的所有.go文件。   gofmt默认不对代码进行简化,使用-s参数可以开启简化代码功能,具体来说会进行如下的转换: 去除数组、切片、Map初始化时不必要的类型声明:...阅读全文

博文 2019-02-27 20:34:42 北春南秋

使用 ReJSON 在 Redis 中保存 Go 结构体

![image](https://raw.githubusercontent.com/studygolang/gctt-images/master/rejson/1_w3hPEpsPFtHs36dJMUdl7w.jpeg) > 图像授权 https://Redislabs.com/blog/Redis-go-designed-improve-performance/ 大部分人可能对 Redis 都很熟悉了。对于外行人来说,Redis 是最广为人知并广泛应用的数据库/缓存产品,起码也是之一。 官方文档是这么描述 Redis 的: > Redis 是一个开源(BSD 许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持的数据结构有字符串(strings),散列(has...阅读全文

博文 2018-06-21 17:40:11 MoodWu

压缩go build打包的可执行文件

前言 最近在写一个cli程序,习惯性的go build之后发现简简单单的几行代码打包出来就3.0+MB了,为此被做Python的同学嘲笑了很久,于是就研究了一下go build产生的可执行文件的压缩 代码示例 代码如下: package main import ( "os" "gopkg.in/urfave/cli.v2" ) const ( APP_NAME = "etcd-cli" APP_VERSION = "0.1" APP_USAGE = "etcd-cli是一个简单实用的etcd命令行客户端,帮助你彻底解脱一次又一次的输入etcdctl" ) func main() { app := new(cli.App) app.Name = APP_NAME app.Version = A...阅读全文

博文 2017-08-17 17:05:04 gwpp

golang socket服务器

一、main.go该代码从项目中分离出来,自行修改后再运行) package main import ( "flag" "fmt" "log" "os" "runtime" ) var ( Port = flag.String("i", ":12345", "IP port to listen on") logFileName = flag.String("log", "cServer.log", "Log file name") configFileName = flag.String("configfile", "config.ini", "General configuration file") ) var ( configFile = flag.String("configfile"...阅读全文

博文 2014-10-04 19:27:01 liaojie

统一配置管理工具confd

confd Github: https://github.com/sumory/confdconfd是一个统一配置管理工具,目前仍在开发中,基于本地文件存储的部署方式已经可以用于生产环境中。 你可以用它: 统一管理各种配置文件,配置文件模板和数据是分离的,可各自单独管理 动态修改配置属性,然后重新生成相关的配置文件 提供cli方式修改数据 Features [x] 基础解析:配置文件使用toml格式,模板数据分离 [x] 多种存储支持:local file、redis、zookeeper [x] 两种运行模式:Debug或Daemon [x] cli工具:修改store,批量更新配置 [ ] 更友好的交互方式,比如通过web界面 [ ] 分离server和client,提供客户端cli或AP...阅读全文

博文 2017-02-09 08:08:04 sumory

centos下安装UPX+压缩golang可执行程序

centos安装upx wget -c http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el7/en/x86_64/rpmforge/RPMS/ucl-1.03-2.el7.rf.x86_64.rpm rpm -Uvh ucl-1.03-2.el7.rf.x86_64.rpm yum install ucl wget -c http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el7/en/x86_64/rpmforge/RPMS/upx-3.91-1.el7.rf.x86_64.rpm rpm -Uvh upx-3.91-1.el7.rf.x86_64.rpm yum install upx #upx压缩...阅读全文

博文 2017-08-25 09:03:27 雨花

go ssh 执行命令

go ssh 执行命令 package main import ( "fmt" gossh "golang.org/x/crypto/ssh" "net" ) type Cli struct { user string pwd string addr string client *gossh.Client session *gossh.Session LastResult string } func (c *Cli) Connect() (*Cli, error) { config := &gossh.ClientConfig{} config.SetDefaults() config.User = c.user config.Auth = []gossh.AuthMethod{gossh....阅读全文

博文 2019-01-28 18:35:13 295631788

服务器框架zinx-基于Golang的轻量级TCP并发服务器框架

# Zinx [![License](https://img.shields.io/badge/License-GPL%203.0-blue.svg)](LICENSE) [![Gitter](https://img.shields.io/badge/在线交流-Gitter-green.svg)](https://gitter.im/zinx_go/community) [![zinx详细教程](https://img.shields.io/badge/zinx详细教程-简书-red.svg)](https://www.jianshu.com/p/23d07c0a28e5) [![zinx原创书籍下载](https://img.shields.io/badge/原创书籍...阅读全文

自动化部署工具Syncd

syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率. **目前只支持类Linux系统.** ## 目录 - [特性](#特性) - [原理](#原理) - [安装](#安装) - [使用](#使用) - [帮助](#帮助) - [授权](#授权) ## 特性 - Go语言开发,编译简单、运行高效 - Web界面访问,交互友好 - 灵活的角色权限配置 - 支持Git仓库 - 分支、tag上线 - 部署hook支持 - 完善的上线工作流 - 邮件通知机制 ## 原理 阅读全文

Go资讯基于go+vue实现的golang每日新闻数据浏览与检索平台

## 介绍 gonews是基于`go+vue`实现的golang每日新闻浏览与检索平台 - 项目地址:[Github](https://github.com/mikemintang/gonews) - 线上Demo:[GoNews](http://gonews.cc) - 数据来源:[GoCN每日新闻](https://github.com/gocn/news) ## 项目截图 ![gonews](https://user-gold-cdn.xitu.io/2018/1/9/160d9ec9df1a6790?w=1652&h=1618&f=jpeg&s=196563) ## 部署 - 获取新闻数据 ``` git clone https:/...阅读全文

开源项目 2018-01-10 11:08:17 mikemintang

golang访问数据库

https://code.google.com/p/go-wiki/wiki/Projects#Databases_and_StorageMysql:github.com/ziutek/mymysql/godrv[*] Mysql:github.com/Go-SQL-Driver/MySQL[*] PostgreSQL:github.com/bmizerany/pq[*] SQLite:github.com/mattn/go-sqlite3[*] DB2: bitbucket.org/phiggins/go-db2-cli MS ADODB: github.com/mattn/go-adodb[*] ODBC: bitbucket.org/miquella/mgodbc[*] Oracle:...阅读全文

博文 2014-10-04 19:26:09 bigmouthz

Pure RESTful api frameworkZerver

一个单纯的Golang RESTful框架,用于搭建api服务,去除了Session, 模板,Cookie。所有组件都是提供接口,非常容易包装以完成自定义功能。 Router是基于树的,匹配很快,支持url参数,支持分组路由,分主机路由。 非常容易通过 Filter 自定义中间件, 支持FilterChain。 可自定义HTTP Method处理, 支持WebSocket,异步任务(还不完善)。 欢迎尝试,提交问题等...阅读全文

开源项目 2015-03-18 04:53:30 cosiner

Golang使用lua脚本实现redis原子操作

# 目录 - [redis 调用Lua脚本](#redis 调用Lua脚本) *[EVAL命令](#EVAL命令) *[SCRIPT命令](#SCRIPT命令) - [redis+lua 实现评分排行榜实时更新](#redis+lua 实现评分排行榜实时更新) *[lua 脚本](#lua 脚本) *[ Golang调用redis+lua示例](#Golang调用redis+lua示例) *[ byte切片与string的转换优化](#byte切片与string的转换优化) *[ github链接](#github链接) - [参考文献](#参考文献) # redis 调用Lua脚本 ## EVAL命令 redis调用Lua脚本需要使用EVAL命令。 redis EVAL命令格式: ``` ...阅读全文

博文 2020-02-28 14:47:25 GrassInWind2019

一个Go开发高性能MySQL Proxy项目kingshard

###kingshard简介 kingshard是一个由Go开发高性能MySQL Proxy项目,kingshard在满足基本的读写分离的功能上,致力于简化MySQL分库分表操作;能够让DBA通过kingshard轻松平滑地实现MySQL数据库扩容。 主要功能: 1.读写分离。 2.跨节点分表。 3.客户端IP访问控制。 4.平滑上线DB或下线DB,前端应用无感知。 ###反馈 目前kingshard还是1.0版本,比较核心的功能已经实现了。但还有很多地方不完善。如果您在使用kingshard的过程中发现BUG或者有新的功能需求,非常欢迎您发邮件至flikecn#126.com与作者取得联系,或者加入QQ群(147926796)交流。 ...阅读全文

开源项目 2015-07-19 11:28:34 flike

在线客服系统龙塘智能客服

龙塘在线客服系统是一个在线客服系统, 程序小巧使用简单, 使用GO高并发,主要特点: 1. go,vue开发, 具有请求与推送全双工功效, 极速高效,具有机器人,知识库功能; 2. 访客窗口多达5种配色方案,同时支持移动和PC端 3. 智能机器人自动回复功能, 即可设置客服系统为无人值守状态; 4. 客服人员使用电脑或移动设备浏览器均可登录提供服务; 5. 客服人员授权访客后可上传图片, 也可设置无需授权直接上传; 6. 客服人员具有群聊功能, 管理员有特殊指令查看系统实时工作状态; 7. 根据客服的挂起状态及其客人数自动分配客人; 8. 客服操作窗口具有记录客人信息功能, 如: 意向分, 姓名, 地址, 电话等; 9. 客服窗口中, 可实时显示客人的输入状态及正在输入的文...阅读全文

开源项目 2021-10-22 21:52:17

Windows下Node.js多版本管理器

由于开发的要求,需要在本地配置不同的node.exe,而开发环境是Win,所以无法使用nvm,而nvmw又不是特别好使,因此索性自己写了一个。 使用GO编写,代码已经放在[github](https://github.com/kenshin/gnvm),不过没什么特别的地方,就是一个自动化的CLI工具,节省了手动下载/配置的麻烦。 文档(详细介绍) -------- https://github.com/kenshin/gnvm 下载 -------- * [32-bit](https://app.box.com/gnvm/1/2014967291) | [64-bit](https://app.box.com/gnvm/1/2014967689) **常用地址...阅读全文

部署devstack

新公司是一家数据与基础设施提供商(to B)。初来乍到,和这里的同事了解了一些云计算平台和大数据平台的技术栈。对于“新鲜”(only to me)的技术栈,自己总有一种折腾的冲动,于是就有了这一篇备忘性质的文章,记录一下自己部署devstack的步骤、遇到的问题和解决方法。 和诸多国内提供公有云的厂商一样,公司的云产品也是基于成熟的OpenStack云计算平台框架和组件搭建的,并做了一些定制。长久以来,我一直以为OpenStack等都是Java技术栈的,对Java技术栈出品的东西总有一种莫名的恐惧感,现在我才发现原来OpenStack是Python系(那个汗汗汗啊)。而OpenStack的另外一个竞争对手:CloudStack才是正经八百的Java系。 OpenStack是一堆云计算平台组件...阅读全文

博文 2016-05-28 08:37:43 bigwhite