onconfigchange golang viper
Golang起步篇
# 一. 安装Go语言开发环境 ## 1. Wondows下搭建Go开发环境 ### (1). 下载SDK工具包 **sdk下载地址为:**[__https://go.dev/dl/__](https://go.dev/dl/) ![](https://tcs-devops.aliyuncs.com ......
golang解决go get下载失败解决办法
原因: 所下载的库依赖有官方库,而官方被封禁网导致。 方法: 设置代理 go env -w GOPROXY=https://goproxy.cn ps: go1.11发布后,还发布一个goproxy提供代理服务,goproxy.cn是专门服务于中国的,依赖于七牛云 github地址:https:// ......
golang汇编学习(寄存器)
好久没有写博客了,上一篇写的汇编只是简单的调试了一下,这段时间又看了下,做一个简单的汇总。 两个代码 汇编代码,1_amd64.s TEXT ·add(SB),$0-0 MOVQ a+0(FP),AX MOVQ b+8(FP),BX ADDQ AX,BX MOVQ BX,c+16(FP) RET 主 ......
CentOS 9 x64 使用 Nginx、Supervisor 部署 Go/Golang 服务
## 前言 在 CentOS 9 x64 系统上,可以通过以下步骤来部署 Golang 服务。 ## 1\. 安装必要的软件包 安装以下软件包: 1. Golang:Golang 编程语言 2. Nginx:Web 服务器 3. Supervisor:进程管理工具 4. Git:版本控制工具 5. ......
golang 实现四层负载均衡
> 大家好,我是蓝胖子,做开发的同学应该经常听到过负载均衡的概念,今天我们就来实现一个乞丐版的四层负载均衡,并用它对mysql进行负载均衡测试,通过本篇你可以了解到零拷贝的应用,四层负载均衡的本质以及实践。 本文代码已经上传到github ```shell https://github.com/Ho ......
golang之copier
今天我们要介绍的copier库就能处理不同类型之间的赋值。除此之外,copier还能: 调用同名方法为字段赋值; 以源对象字段为参数调用目标对象的方法,从而为目标对象赋值(当然也可以做其它的任何事情); 将切片赋值给切片(可以是不同类型哦); 将结构体追加到切片中。 快速使用 先安装: $ go g ......
Golang 简单的数据对齐可提高程序速度和内存使用率
### 序 Golang 中的结构或 struct 是用户定义的类型,允许将可能不同类型的项分组/组合为单一类型。 可以说是一个不支持继承但支持组合的轻量级类。 我们使用 Golang 编写代码的时候,你肯定使用过`struct`。 但是,你可能不知道的是,通过简单地重新排序结构中的字段,可以极大地 ......
golang之go-spew
我们在使用Golang(Go语言)开发的过程中,会通过经常通过调试的方式查找问题的原因,解决问题,尤其是当遇到一个很棘手的问题的时候,就需要知道一段代码在执行的过程中,其上下文的变量对应的数据,以便进行推测出问题的原因。 对于这类调试,我们用的比较多的一个是断点调试,还有是通过打印日志输出。通过日志 ......
golang怎么改进csv导入到sqlite的速度
Crafted by [Genie](https://marketplace.visualstudio.com/items?itemName=genieai.chatgpt-vscode) ## You golang怎么改进csv导入到sqlite的速度 ## Genie 在将CSV数据导入到SQL ......
Golang空结构体struct{}的作用?
### 介绍 在平时做项目得时候,经常会看到很多包里面定义了结构体。 e.g. 在`context`包里面`Context`接口中的`Done()`方法,`Done()`返回一个是以空结构体定义数据的通道`chan struct{}`,那这里他是有什么特殊用意吗?我们接下来分析`struct{}`的 ......
【Go/golang】原生监听处理http请求的写法
原文地址:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/03.4.md 由于自己经常忘了怎么写,而Github又经常抽风,所以这里做个备份 ``` package main import ( " ......
精选Golang高频面试题和答案汇总
之前写的《 GO必知必会面试题汇总》,已经阅读破万,收藏230+。这篇文章给大家整理了17道Go语言高频面试题和答案详解,每道题都给出了代码示例,方便大家更好的理解。 ......
36-golang动态创建类
### 动态创建类 (1.)使用反射创建类 ``` import `reflect` var typeRegistry = make(map[string]reflect.Type) func RegisterType(elem interface{}) { t := reflect.TypeOf( ......
golang之类型转换cast
Go 语言作为强类型语言,在使用 Golang 开发项目时,经常会遇到类型转换的场景,整型之间可以直接转换,字节切片和字符串之间也可以直接转换。 但是,如果整型和字符串之间做类型转换,则需要使用 strconv 标准库提供的函数。 01 标准库 strconv 类型转换 Go 语言标准库 strco ......
golang使用core dump分析定位程序崩溃问题
原创 萧瑟 golang面试经典讲解 2023-06-23 19:05 发表于上海 收录于合集 #go语言6个 #go6个 ##go工具15个 一、前言 core dump 是一个包含着意外终止的程序其内存快照的文件。这个文件可以被用来事后调试(debugging)以了解为什么会发生崩溃,同时了解其 ......
保护数据隐私:深入探索Golang中的SM4加密解密算法
确保网络请求数据传输的安全性、一致性和防篡改是至关重要的。通过结合对称加密和非对称加密的强大能力,我们可以实现高度安全的数据传输。对称加密提供了快速且高效的加密和解密过程,而非对称加密则保证了密钥的安全性。这种结合能够确保数据在传输过程中的保密性、完整性和可靠性,有效防止数据被篡改或窃取。无论是保护... ......
golang context使用小结
Go标准库中的context包,提供了goroutine之间的传递信息的机制,信号同步,除此之外还有超时(timeout)和取消(cancel)机制。概括起来,Context可以控制子goroutine的运行,超时控制的方法调用,可以取消的方法调用。 #### context核心数据结构 1. Co ......
golang入门,基础语法demo(1)
package main import "fmt" func main() { // 声明变量 var a int // 使用 var 关键字声明变量 a,类型为 int a = 1 // 赋值 fmt.Println(a) // 类型推导 // 使用 := 自动推导类型并声明变量 b,其类型为 s ......
golang 常用控制协程的三种方式
#### waitGroup waitGroup这种方式适用于一个任务可以被拆分成几个子任务,并且子任务之间的关联程度不高,全部的子任务都完成,才会进行下一阶段的任务。 ```golang package main import ( "fmt" "sync" "time" ) func main() ......
GoLang在不同系统打包
配置 Mac下编译Linux, Windows平台的64位可执行程序: go env -w CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go env -w CGO_ENABLED=0 GOOS=windows GOARCH=amd64 Linux下编译Mac, Win ......
golang 给对象的基础数据类型的指针类型的属性赋值
## 概要 有时我们可能碰到定义成下面这样的结构体,结构体里某些属性是基础数据类型,更确切的说,是基础数据类型的指针类型。 ```golang type Student struct { name string `json:"name"` age *int `json:"age"` // age 是 ......
Golang 中文转拼音
翻遍整个 GitHub , Golang 中文转拼音类库, 怎么就这么难找呢? 于是我造了一个轮子: 中文转拼音类库. 目前来说应该是最好用的了. GitHub 传送门: [https://github.com/Lofanmi/pinyin-golang](https://github.com/Lo ......
Golang如何优雅地关闭 channel
Golang如何优雅地关闭 channel 萧瑟 golang面试经典讲解 2023-05-31 21:00 发表于上海 一、介绍 想必听说过 go 的,应该都知道 go 的最大的特性 goroutine 并发编程,而说到并发编程,使用 channel 进行数据传输是 go 中的必修课。 go 的并 ......
Golang 中文转拼音
翻遍整个 GitHub , Golang 中文转拼音类库, 怎么就这么难找呢? 于是我造了一个轮子: 中文转拼音类库. 目前来说应该是最好用的了. GitHub 传送门: [https://github.com/Lofanmi/pinyin-golang](https://github.com/Lo ......
A Practical Methodology, HSM, Handler,Service,Model, for Golang Backend Development
A simple methodology or design pattern called HSM (Handler, Service, Model) or Golang backend development. HSM is similar to MVC but specifically tail... ......
Go 语言之 Viper 的使用
# Go 语言之 Viper 的使用 ## Viper 介绍 [Viper](https://github.com/spf13/viper): ### 安装 ```bash go get github.com/spf13/viper ``` ### Viper 是什么? Viper 是一个针对 Go ......
如何调试golang程序
在Golang中进行调试和性能分析是非常重要的,在开发过程中发现问题并及时修复可以极大地提高代码质量和效率。介绍两种常用的调试工具,dlv和pprof,以及如何使用它们进行代码调试和性能分析。 ### 一、dlv调试工具 1.安装 在使用dlv前需要先安装,可以通过以下命令进行安装: ```shel ......
golang 语法糖
### golang 语法糖 在 Go 语言中,`nums...` 是一种语法糖,用于将切片 `nums` 展开为一个个独立的参数。 在函数调用中,如果你有一个切片 `nums`,你可以使用 `nums...` 将切片展开为独立的元素,作为函数的参数传递。 以下是一个示例说明 `nums...` 的 ......
镜像golang 标准库文档
- **缘起:**查golang文档时,访问 https://pkg.go.dev/std 网站有点慢,就想做个离线版的 - 修改日期: 2023-06-16 # mirror std lib `wget -c -t 3 -r -l 1 -np -p -k https://pkg.go.dev/st ......