Go语言(golang)开源项目大全

内容目录 Astronomy 构建工具 缓存 云计算 命令行选项解析器 命令行工具 压缩 配置文件解析器 控制台用户界面 加密 数据处理 数据结构 数据库和存储 开发工具 分布式/网格计算 文档 编辑器 Encodings and Character Sets Games GIS Go Implementations Graphics and Audio GUIs and Widget Toolkits Hardware Language and Linguistics 日志 机器学习 Math...阅读全文

2015-07-10 09:55 davygeek
阅读:23372 评论:0

使用consul实现分布式服务注册和发现

使用consul实现分布式服务注册和发现 七 06 bigwhite技术志 Airbnb, cluster, consul, docker, etcd, Go, Golang, haproxy, hashicorp, json, raft, SmartStack, ZooKeeper, 分布式系统, 强一致性, 服务发现, 服务注册, 选主 No Comments Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,比如 Ai...阅读全文

阅读:21230 评论:2

Golang通过Thrift框架完美实现跨语言调用

目录[-] 一、开发前准备 1、安装golang的Thrift包: 2、产生协议库: 3、生成开发库 二、go语言实现 1、服务器端 2、客户端程序 三、Java版实现 1、Java服务器版 2、Java客户端版 每种语言都有自己最擅长的领域,Golang 最适合的领域就是服务器端程序。 做为服务器端程序,需要考虑性能同时也要考虑与各种语言之间方便的通讯。采用http协议简单,但性能不高。采用TCP通讯,则需要考虑封包、解包、粘包等等很多因素,而且想写个高效的TCP服务,也很难。 其实,对于此类...阅读全文

2015-07-17 17:23 wwwxxdddx
阅读:3100 评论:0

DockOne微信分享(一一七):沪江容器化运维实践

【编者的话】沪江目前容器技术主要应用场景:OCS课件业务无状态应用;基于Apache Mesos+Marathon实现沪江容器系统调度管理;Consul + Consul Template + Nginx实现服务自动发现和注册;Prometheus + Grafana + Alertmanager报警实现容器监控报警。本次分享将从以下几方面来讲解: 选择容器技术缘由容器技术选型容器存储容器网络监控报警镜像管理调度管理服务注册发现自动化部署自动化扩缩容 【深圳站|3天烧脑式Kubernetes训练...阅读全文

2017-05-09 lavendergeng
阅读:3525 评论:0

golang bufio、ioutil读文件的速度比较(性能测试)和影响因素分析

前言 golang读取文件的方式主要有4种: 使用File自带的Read方法 使用bufio库的Read方法 使用io/ioutil库的ReadAll() 使用io/ioutil库的ReadFile() 关于前3种方式的速度比较,我最早是在 GoLang几种读文件方式的比较 看过,但在该blog的评论区有人(study_c)提出了质疑,并提供了测试代码。根据该代码的测试,结果应该是 bufio > ioutil.ReadAll > File自带Read 在我反复跑study_c测试代码过程中发现...阅读全文

2017-10-23 17:04:50 肥羊
阅读:1842 评论:0

Go 终极指南:编写一个 Go 工具

我之前编写过一个叫 **gomodifytags** 的工具,它使我的生活变得很轻松。它会根据字段名称自动填充结构体标签字段。让我来展示一下它的功能: ![在 vim-go 中使用 gomodifytags 的一个示例](http://upload-images.jianshu.io/upload_images/2192094-880be71ebd4d9610.gif?imageMogr2/auto-orient/strip) 使用这样的工具可以很**容易管理**结构体的多个字段。该...阅读全文

2017-10-27 09:53:11 oopsguy
阅读:6675 评论:7

声动派干货:微服务架构实践经验分享

作者介绍伍欣 厦门声连网信息科技有限公司 技术副总监你将看到1、微服务的特性,微服务实施的要求、复杂程度以及相应的挑战;2、企业如何衡量是否应该使用微服务架构;3、微服务对运维的要求;4、开发微服务选择框架要考虑的因素;5、我司最佳实践案例分享本文大概:5200字 阅读需要:8分钟一、什么是微服务?微服务 (Microservices) 是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块 (Small Building Blocks) 为基础,利用模组化的方式组合出复杂的大型应用程序,...阅读全文

阅读:2263 评论:1

GO Modules 使用

旧项目迁移,打算使用GO Modules 作为依赖管理。go版本 1.12私人依赖包,如何处理1. 创建模块的目录 ,并伸出go.mod 文件 mkdir modules go mod init modules 2. 创建自己的package目录 如 base module |--- main.go |---go.mod |---base |---testBase.go 其中main.go 的内容 package main import "modules/base" func main(){ b...阅读全文

2019.02.28 15:52 起名好难_b30f
阅读:2954 评论:4

golang服务的文件句柄超出系统限制(too many open files)

最近在项目中遇到一个很奇怪的问题,因为修改配置(redis中缓存的),nginx服务突然报upstream timed out (110: Connection timed out),然后去查为什么会出现这样的问题,发现出问题的服务是一个golang的http server,查看程序日志,发现大量的accept4: too many open files报错,第一感觉应该是哪里文件句柄读取没有释放。too many open files(打开的文件过多)是Linux系统中常见的错误,从字面意思上...阅读全文

2019.10.09 13:37:01 aside section . 等
阅读:5539 评论:0