go-gprc gprc go

go:(三)web编程:socket

引用: 08.1. Socket 编程 | 第八章. Web 服务 |《Go Web 编程》| Go 技术论坛 (learnku.com) 1. 什么是socket: 2.socket如何通信: 3.Socket基础知识: 类型: TCP Socket和UDP Socket ......
socket web go

Go 环境安装

## Windows 安装 ### **安装** Go 1. 下载地址:https://studygolang.com/dl,下载安装包 go1.19.windows-amd64.msi 2. 双击安装包,将软件安装到 D:\Program Files\Go1.19 3. 设置GOPATH工作目录: ......
环境 Go

Go--发起HTTP请求

一、HTTP请求 根据 HTTP 标准,HTTP 请求可以使用多种请求方法。在日常开发中大多数会用到 5 种请求方法: GET、POST、PUT、PATCH 和 DELETE 方法 描述 GET 请求指定的页面信息,并返回实体主体 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件) ......
HTTP Go

Go:空接口

> 最近在刷题的时候,注意到接口的一些特性。 # 空接口的作用 在调用一些库函数的时候,经常会注意到函数参数里面会带有一个空接口,但是实际调用的时候却可以传别的类型进去。后面查的资料,才发现: 1. 接口在go里面的实现是隐式的,也就是说只要是实现了`所有`接口里面定义的方法,那么就可以认为实现了接 ......
接口

Kubernetes编程——client-go 基础

client-go 基础 https://kubernetes.io/docs/reference/using-api/client-libraries/ https://github.com/kubernetes/client-go/ 一、代码仓库 Kubernetes 项目提供了一系列可供第三方 ......
Kubernetes client-go 基础 client go

go mod常用命令

download //下载模块到本地缓存,具体可以通过命令go env查看,其中环境变量GOCACHE就是缓存的 init //在当前目录下初始化新的模块 tidy //添加缺失的模块以及移除无用的模块 verify //验证依赖项是否达到预期的目的 why //解释为什么需要包或模块 1. 首先将 ......
命令 常用 mod go

qq闪照恢复--go

# 闪照缓存目录: > 文件管理/Android/data/com.tencent.mobileqq/xxx/Cache_xxxxxxxxx_fp # code 爆破DES 8字节密钥,每一位仅需考虑9种字符("02468@BDF"),9**8=43046721 种可能 ```go // refer ......
go

Go学习圣经:Go语言实现高并发CRUD业务开发

文章很长,且持续更新,建议收藏起来,慢慢读![**疯狂创客圈总目录 博客园版**](https://www.cnblogs.com/crazymakercircle/p/9904544.html) 为您奉上珍贵的学习资源 : 免费赠送 :[**《尼恩Java面试宝典》**](https://www. ......
圣经 语言 业务 CRUD

Go 语言并发编程之 singleflight 库和归并回源算法的使用

在并发编程中,重复执行相同操作可能会浪费计算资源和时间,导致重复的网络请求,甚至产生不一致的结果。为了解决这些问题,Go 语言提供了一个名为 singleflight 的同步库和归并回源算法,它们可以避免重复执行相同操作,提高程序的性能和可靠性。 singleflight 库提供了一个 Group ......
singleflight 算法 语言 Go

go语言函数作用域及匿名函数

作用域 函数会开辟一个局部作用域,其中定义的标识符仅能在函数之中使用,也称为标识符在函数中的可见范围。 这种对标识符约束的可见范围,称为作用域。 1、语句块作用域 if、for、switch等语句中定义的变量,可以认为就是该语句块的变量,作用域仅在该语句块中。if、swith、select语句中的每 ......
函数 作用 语言

go map 源码阅读

## go map 源码阅读 * 内存布局:golang中的map是怎么组成的 * 初始化 * 设置map值 * 获取map值 * 迭代map * 为什么迭代顺序每次都不一样 * 扩容 * 什么时候才会扩容 * 为什么是渐进式扩容 #### 源码地址 **src/runtime/map.go** # ......
源码 map go

Go常见错误集锦之混淆slice中的长度(length)和容量(capacity)

原文文章:https://zhuanlan.zhihu.com/p/413972333 在Go语言中,slice的底层实现是数组,也就是说,切片的数据实际上是被存储在数组中的。如果后端的数组空间已经满了或是空数组,则slice结构体负责处理数组容量的扩容或缩容逻辑。 此外,slice的结构体中共拥有 ......
集锦 长度 capacity 容量 常见

go:(一)编程基础3:反射,并发

引用: 第 13 课:反射 reflection ? | 课程列表 |《Go 编程基础(视频)》| Go 技术论坛 (learnku.com) 1.反射: 基本使用方法: 取匿名字段的信息: 通过反射修改对象操作: 2.并发: ......
基础 go

go 使用 unsafe 包

# go 使用 unsafe 包进行指针操作 go 语言中没有直接提供指针操作,但是提供了 `unsafe` 包可以对指针进行转换 ```go // - A pointer value of any type can be converted to a Pointer. // - A Pointer ......
unsafe go

go:(一)编程基础2:函数,结构,方法,接口

引用: 第 9 课:函数 function ? | 课程列表 |《Go 编程基础(视频)》| Go 技术论坛 (learnku.com) 1.函数: 闭包: defer匿名函数调用:如下例就是引用变量地址的情况,只有作为参数传入时才是值拷贝 recover使用: 2.结构: struct定义及变量初 ......
函数 接口 结构 基础 方法

GO 语言中 slice 的理解

GO 语言中 slice 理解 ### 为什么说 Go 语言的 slice 是引用类型,其底层实现明明是一个结构体? > slice 的底层实现是一个包含三个字段的结构体:指向底层数组的指针、slice 的长度和 slice 的容量。当我们对 slice 进行操作时,例如添加或删除元素,实际上是在底 ......
语言 slice GO

【已解决】GO语言开发中调用另一个库报错 cannot refer to unexported name XXXX

package main import ( "fmt" "study_gos/main/kehu" ) //使用了go.mod //GOPATH /D/workspace/gos //cd /d/workspace/studys/study_gos/src //go env -w GO111MODU ......
unexported 语言 cannot refer XXXX

一文了解Go语言的匿名函数

# 1. 引言 无论是在`Go`语言还是其他编程语言中,匿名函数都扮演着重要的角色。在本文中,我们将详细介绍`Go`语言中匿名函数的概念和使用方法,同时也提供一些考虑因素,从而帮助在匿名函数和命名函数间做出选择。 # 2. 基本定义 匿名函数是一种没有函数名的函数。它是在代码中直接定义的函数,没有被 ......
函数 语言

go编程基础--类型与变量

引用: 第 3 课:类型与变量 ? | 课程列表 |《Go 编程基础(视频)》| Go 技术论坛 (learnku.com) 1.go编排组织结构: 2.类型: rune表明用于unicode字符操作 3. 默认值:值类型与引用类型 引用类型的默认值是nil ......
变量 类型 基础

Go——常用函数

字符串相关 注意:字符串的值是不可变的,只是将操作后的值赋给一个变量 1、统计字符串长度:按字节len(str) 2、字符串遍历,同时处理有中文的问题 r:=rune(str) 3、字符串转整数:n,err := strconv.Atoi("12") 4、整数转字符串: str=strconv.it ......
函数 常用

Go 匿名返回值的坑——这道题据说 90% 的同学都答错了!

#! https://zhuanlan.zhihu.com/p/639160955 今天分享的内容比较基础,准确地说是 Go 的语言特性——命名、匿名返回值。 先看下面的例子,猜测会输出什么? ```go package main func main() { println(A()) println ......
同学 90% Go

Go-闭包

1、介绍: 闭包就是一个函数和与其相关的引用环境组合的一个整体(实体) 2、演示: //累加器 func AddUpper() func(int)int{ var n int=10 return func(x int )int{ n=n+x return n } } func main(){ f:= ......
闭包 Go

go使用 github.com/influxdata/influxdb/client/v2 写数据到 influxdb

转载请注明出处: 接入示例 使用 github.com/influxdata/influxdb/client/v2 依赖包向 InfluxDB 写入数据的示例代码: package main import ( "fmt" "log" "time" "github.com/influxdata/inf ......
influxdb influxdata 数据 github client

go 1.17 之后使用 go install 来安装 module

### 楔子 根据经验,我们知道 go get 可以用来安装module,module 又分成 2 类,一类是普通的代码依赖,一类是可执行二进制工具。两类 module 分别会被放到不同的文件夹下,第一类代码依赖通常会被放在 `$GOPATH/pkg/mod` 文件夹下,第二类 module 通常被 ......
install module go 1.17 17

Go-指针篇

一、简单演示 与C指针类似 1)指针变量存的是一个地址,地址指向的空间存的才是值 2)获取指针类型所指向的值,使用 * 二、使用细节 1)值类型,都有对应的指针类型,形式为*数据类型,比如int的对应指针就是*int 2)值类型包括:基本数据类型int系列,float系列,bool,string,数 ......
指针 Go

一文了解Go语言的函数

# 1. 引言 函数是编程中不可或缺的组成部分,无论是在`Go`语言还是其他编程语言中,函数都扮演着重要的角色。函数能够将一系列的操作封装在一起,使得代码更加模块化、可重用和易于维护。 在本文中,我们将详细介绍Go语言中函数的概念和使用方法,包括函数的定义、参数和返回值、调用方式、可变参数、函数作为 ......
函数 语言

Go 数据库连接池的设计与实现

为什么需要连接池 如果不用连接池,而是每次请求都创建一个连接是比较昂贵的,因此需要完成3次tcp握手 同时在高并发场景下,由于没有连接池的最大连接数限制,可以创建无数个连接,耗尽文件描述符 连接池就是为了复用这些创建好的连接 连接池设计基本上连接池都会设计以下几个参数: 初始连接数:在初始化连接池时 ......
数据库 数据 Go

Go-变量篇

一、变量的声明方式(三种) 1、var a int = num 2、var a = num 3、a := num 二、字符类型使用细节 *Golang的字符使用UTF-8. 英文 -1 字节;汉字-3个字节 1、字符常量用单引号括起来。 eg: var c1 byte='a' 2、在Go中,字符的本 ......
变量 Go

go 使用验证码库

# go 使用验证码库 标签(空格分隔): go 安装 go get github.com/mojocn/base64Captcha 使用 package api import ( "github.com/gin-gonic/gin" "github.com/mojocn/base64Captcha ......
go

Go语言中的defer关键字

在Go语言中,defer关键字是一个独特而强大的特性,它可以将代码块推迟到函数返回之前执行。这种机制可以用于资源的释放、错误处理、性能优化等多种场景。本文将详细介绍defer的用法和工作原理,并通过实际示例来展示其在不同情况下的应用。 ## defer的基本用法 在Go语言中,使用defer关键字可 ......
关键字 关键 语言 defer