Golang 实现Thrift客户端连接池方式

1 前言阅读文章之前,请先了解一下thrift相关知识。thrift官方并没有提供客户端连接池的实现方案,而我们在实际使用时,thrift客户端必须复用,来保证较为可观的吞吐量,并避免在高QP...

goland设置控制台折叠效果

1.快捷键 ctrl(cmd) + shift + A或者Help—>Find Action2.输入Registry,输完记得回车3.取消go.run.process.with.pty勾选小知识点:上面图可以直接搜索—>直接输入go...

golang 生成定单号的操作

年(2位)+一年中的第几天(3位)+指定位数随机数//生成单号//06123xxxxx//sum 最少10位,sum 表示全部单号位数func MakeYearDaysRand(sum int) string { //年 strs := time.N...

xorm根据数据库生成go model文件的操作

你懂的,手工翻译表定义到go结构体是很枯燥的。so,用xorm搞定。go get github.com/go-xorm/cmd/xorm安装以下依赖,用到哪个装哪个。github.com/go-xorm/xorm驱动Mysql: github.c...

解决go build不去vendor下查找包的问题

go build 报错:main.go:5:2: cannot find package “gopkg.in/go-playground/validator.v9” in any of:/usr/local/go/src/gopkg.in/go-playground/validator.v9...

golang-gin-mgo高并发服务器搭建教程

gin-mgo服务器搭建该服务器实现简单接收请求并将请求参数封装存储在mongodb数据库中,本文将讲述gin-mgo的使用方法。项目完整代码地址: https://github.com/wayne-yhp/golang-...

Golang中优秀的消息队列NSQ基础安装及使用详解

前言NSQ是Go语言编写的,开源的分布式消息队列中间件,其设计的目的是用来大规模地处理每天数以十亿计级别的消息。NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障、故...

Golang中基础的命令行模块urfave/cli的用法说明

前言相信只要部署过线上服务,都知道启动参数一定是必不可少的,当你在不同的网络、硬件、软件环境下去启动一个服务的时候,总会有一些启动参数是不确定的,这时候就需要通过命令行...

Golang使用第三方包viper读取yaml配置信息操作

Golang有很多第三方包,其中的 viper 支持读取多种配置文件信息。本文只是做一个小小demo,用来学习入门用的。1、安装go get github.com/spf13/viper2、编写一个yaml的配置文件...

golang指数运算操作

我就废话不多说了,大家还是直接看代码吧~func main() { fmt.Println(exponent (5,3))}//a的n次方//超出uint64的部分会丢失func exponent (a,n uint64) uint64 { result := u...

go语言math包中有哪些常用方法

go语言math包中的常用方法有:1、取绝对值方法Abs();2、幂次方方法Pow();3、开平方方法Sqrt();4、开立方方法Cbrt();5、向上取整方法Ceil();6、向下取整方法Floor()。详细介绍:math...

go语言中string是什么意思

go语言中string是字符串,它的本质是一个【[]byte】,因此它们两者之间是可以相互转换的,byte数组的长度就是字符串的长度。字符串的值一旦确定,就不能进行修改了。Go语言String的...

golang 实现interface{}转其他类型操作

golang中的string是可以转换为byte数组或者rune数组但是其实byte对应的类型是uint8,而rune对应的数据类型就是int32所以string可以转换为四种类型//interface转其他类型&mdas...

golang切片反序实例

看代码吧~package mainimport ( "fmt")func main() { fmt.Println(reverse([]byte{11,22,33,44}))}func reverse(s []byte) []byte { for i, j := 0, len(s)-1; i < j; i, j...

golang HTTP 服务器 处理 日志/Stream流的操作

目前,我开发 HTTP 服务, 用的是 beego框架, 方便了很多。但是, 有时候,还是会遇到一些 特殊的场景。比如: 过滤日志。这应该是一种典型的stream,同时数据量也适中, 不会有人,为了这个...

浅谈go 协程的使用陷阱

golang 语言协程协程中使用全局变量、局部变量、指针、map、切片等作为参数时需要注意,此变量的值变化问题。 与for 循环,搭配使用更需谨慎。1、内置函数时直接使用局部变量,未...

golang 获取当前执行程序路径的操作

我就废话不多说了,大家还是直接看代码吧~1.获取当前执行程序路径func execPath() (string, error) { file, err := exec.LookPath(os.Args[0]) if err != nil { return "",...

go语言的工作空间和GOPATH环境变量介绍

go语言并没有强制一定要使用一定的工作空间和项目结构,对于小型的go程序依靠go run等命令就可以直接编译运行。然而,保持良好的工作空间和文件结构,对于管理源代码和发布程序都...

解决go echo后端处理跨域的两种操作方式

跨域问题一般需要在后台解决会比较好。1、第一种方式当然是接受所有的跨域方式:func setAccessOriginUrl(c echo.Context) { c.Response().Header().Set("Access-Control-...

golang 实现tcp server端和client端,并计算RTT时间操作

server端代码:package main import ( "fmt" "net" "log" "os") func main() { addr := "0.0.0.0:8787" tcpAddr, err := net.ResolveTCPAddr("tcp",addr) if err != nil { lo...

go语言如何设置定时器

Go语言中定时器的使用GO语言在time包中提供了三种定时器的使用方式:1.第一种:ticker// A Ticker holds a channel that delivers `ticks&#39; of a clock// at intervals.type...

go嵌套匿名结构体的初始化详解

go匿名结构体嵌套匿名结构体的 示例代码片.type debugConfig struct { MaxQueueDepth int `json:"maxQueueDepth"` ListenerEntries string `json:"listenerEntries"`...

解决golang读取http的body时遇到的坑

当服务端对http的body进行解析到map[string]interface{}时,会出现cli传递的是int类型,而服务端只能断言成float64,而不能将接收到的本该是int类型的直接断言为intclifunc main(...

解决golang处理http response碰到的问题和需要注意的点

在处理http response的时候,偶然发现,body读取之后想再次读取的时候,发现读不到任何东西。见下方代码:response, err = ioutil.ReadAll(resp.Body) if err != nil { log.Pri...

golang http请求封装代码

在GOPATH 中创建 utils 文件夹 放置这两个文件http.gopackage utils import ( "crypto/tls" "encoding/json" "errors" "fmt" "io/ioutil" "net/http" "net/url" "strings"...

返回顶部
顶部