go-gprc gprc go

go cobra执行命令

/*Copyright 2022 cuisongliu@qq.com.Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with ......
命令 cobra go

Go语言中init函数执行的顺序

`init` 函数的执行规则: 1. 对于同一个 go 文件,`init` 函数的执行顺序从上到下,即在代码中先出现的 `init` 函数会先执行。 2. 对于同一个 package,不同文件是按照文件名字符串比较的结果决定执行顺序的,字符串越小的文件越早被初始化。 3. 对于不同的 package ......
函数 顺序 语言 init

【Go blog】Govulncheck v1.0.0 发布了!

我们很高兴地宣布,govulncheck v1.0.0 已经发布,同时也发布了用于集成扫描到其他工具的 API 的 v1.0.0 版本!Go 对漏洞管理的支持首次在去年九月宣布。从那时起,我们做了一些改变,最终在今天发布。这篇文章描述了 Go 的更新漏洞工具,以及如何开始使用它。我们最近还发布了一个 ......
Govulncheck blog 0.0 v1

【go语言】2.3.2 error 接口

在 Go 语言中,`error` 是一个内置的接口类型,用于表示错误情况。`error` 接口的定义如下: ```go type error interface { Error() string } ``` 任何具有 `Error() string` 方法的类型都可以被视为实现了 `error` 接 ......
接口 语言 error

go语言全景俯瞰

本篇是语言教学的“传统项目”。每个写go语言教学的人,都会介绍它的发展历程,应用领域,优缺点和特点来介绍自己的理由。当然如果你有自己的理解,那就更好了,欢迎讨论! ![](https://img2023.cnblogs.com/blog/878843/202307/878843-2023072823 ......
语言

【go语言】2.3.1 错误处理的基本概念

在 Go 语言中,错误处理是通过返回错误值进行的,而不是像一些其他语言那样通过抛出和捕获异常。Go 语言有一个内置的接口类型 `error`,专门用于处理错误。 ### `error` 接口 `error` 是一个内置的接口,定义如下: ```go type error interface { Er ......
概念 错误 语言

Go 语言 select 都能做什么?

**原文链接:** [Go 语言 select 都能做什么?](https://mp.weixin.qq.com/s/YyyMzYxMi8I4HEaxzy4c7g) 在 Go 语言中,`select` 是一个关键字,用于监听和 `channel` 有关的 IO 操作。 通过 `select` 语句, ......
语言 select Go

使用Go调用Powershell加域

```golang package main import ( "fmt" "github.com/go-ldap/ldap/v3" "github.com/mozillazg/go-pinyin" "os" "os/exec" "strings" "time" ) func ChineseToAb ......
Powershell

【go语言】1.1.2 Go 语言的特性

### 1. 简洁的语法 Go 语言的语法设计上非常简洁明了,没有复杂的继承和泛型,也没有异常处理,但这并不影响它的功能性和表达力。这使得 Go 语言容易学习和使用。 例如,以下是一个简单的 Go 函数,用于计算两个数字的和: ```go func add(x int, y int) int { r ......
语言 特性 Go

Go语言模拟用户登录并且调用接口发布文章

新版本发布:weijuncug/hardmall:3.0.61版本 更新内容 增加了 /fixed开头的url path,对外提供固定的api服务 增加接口 /fixed-new-post可以通过调用该接口快速发布文章。使用效果跟xmlrpc接口相同。 /fixed-form-id接口可以申请修改或 ......
接口 语言 用户 文章

【go语言】2.2.1 数组和切片

数组和切片是 Go 语言中常用的数据结构,它们都可以存储多个同类型的元素。 ### 数组 数组是具有固定长度的数据类型,它的长度在定义时就已经确定,不能随意改变。 你可以使用以下方式定义一个数组: ```go var arr [3]int ``` 这段代码定义了一个长度为 3 的 `int` 类型数 ......
数组 语言

go实现对容器日志的读取并通过api展示

# 场景 工作环境中,用容器部署服务是很常见的操作,而新上线的业务,测试人员需要对服务进行测试 但是一下几种可能,使得测试人员并不能方便的查看日志: + 有的测试人员docker并不熟 + 权限比较严格,测试人员没权限操作容器 + 临时需要查看日志 第一第二中情况咱就不说了,第三种情况,如果只是临时 ......
容器 日志 api

go 面试题

## 前言 ### 1、面试建议 **技术部分** 1)、算法部分,刷LeetCode就完事了,这是一个长期的过程,短期突击没啥效果,因为题目太多了。 2)、语言基础,细分为:golang基础及原理,就是本文主要内容了;mysql基础及原理;redis基础及原理;kafka或其他消息中间件(如果没用 ......
go

go语言:闭包

## 问题 ``` package main import "fmt" var i int i = 1 func main() { fmt.Println(i) } ``` 上面代码运行出现如下报错: ``` ./main.go:6:1: syntax error: non-declaration ......
闭包 语言

go map中的slice

看以下代码: func main() { mym := make(map[int32][]bool) slice, ok := mym[1] if !ok { slice = []bool{} mym[1] = slice } slice = append(slice, false) print(m ......
slice map go

【go语言】2.1.3 函数的定义和使用

在 Go 语言中,函数是一种代码抽象和复用的方式。函数可以接受参数,执行特定的操作,并返回结果。 ### 函数的定义 函数的定义以 `func` 关键字开始,后面跟着函数名、参数列表、返回值列表(可选)以及函数体。下面是一个函数定义的例子: ```go func greet(name string) ......
函数 语言

【go语言】2.1.1 变量,常量和数据类型

Go 语言中,变量是存储数据的基本单位,常量则是固定不变的数据。每个变量和常量都有其对应的数据类型。 ### 变量 在 Go 语言中,你可以使用 `var` 关键字来声明一个变量: ```go var name string ``` 上面的代码声明了一个名为 `name` 的变量,它的类型是 `st ......
常量 变量 语言 类型 数据

Go语言网络编程示例

### 1. 简单示例 - 以下是一个使用 Go 语言标准库 net 实现的简单的客户端和服务器端示例。 - 服务器端监听本地的 8080 端口,并在接收到客户端连接后,向客户端发送一条欢迎消息。 - 客户端通过 ```Dial``` 方法连接服务器,并接收服务器发送的欢迎消息。 服务器端代码: ` ......
网络编程 示例 语言 网络

go基础-依赖管理

有些不可思议,简洁、优雅的go语言依赖管理如此混乱,发布多年也没有可靠的依赖管理机制,官方先后推出了多种依赖管理机制gopath、vender、dep等,没有一个顺手,直到在Go 1.11推出go mod才有所缓解,也谈不上优秀,相比maven弱爆了。主流语言都有官方依赖包站点,如maven、pip ......
基础

在GO语言中项目中使用zap日志库

# 在GO语言中项目中使用zap日志库 本文先介绍了GO语言中原生的日志库中使用,然后想继续介绍了非常流行的Uber开源的zap日志库,同时介绍了如何搭配Lumberjack实现日志的切割和归档。 ## 在GO语言项目中使用zap日志库 **介绍** 在许多go语言项目中,我们需要一个好的日志记录器 ......
语言 项目 日志 zap

Go语言初始化数组的方式

在Go语言中,数组的初始化有多种方法,我会一一为你列举如下: 1. 基本初始化: 可以在声明数组时直接指定元素的初始值,由编译器自动推断数组的长度。 ```go // 方法1:使用数组字面值初始化 arr1 := [3]int{1, 2, 3} // 方法2:使用自动推断数组长度 arr2 := [ ......
数组 语言 方式

go语言基础一(包、变量和函数)

# 包 go程序由一个个不同的包组成,程序的入口是名为main的包,比如我们创建一个main文件 main.go ```go package main import "fmt" func main(){ fmt.Println("hello") } ``` go要求每一个go文件的非注释开头必须是` ......
语言基础 变量 函数 语言 基础

go语言gorm的CRUD

插入 如果表不存在,则插入失败 type Student struct { ID int // 缺省主键bigint AUTO_INCREMENT Name string `gorm:"size:48"` //`gorm:"not null;type:varchar(48);comment:姓名"` ......
语言 gorm CRUD

kube-apiserver内存溢出问题调查及go tool pprof工具的使用

问题描述 测试集群三台master,每个master上面的kube-apiserver都频繁的重启。登录其中一台master,发现kube-apiserver的内存占用特别高,每次重启完后内存很快就飙到了20G左右,而且还有继续增长的趋势。因为默认kube-apiserver的静态pod是没有设置m ......

WSL2安装以及go开发环境搭建

# 1 WSL2安装 > WSL2 相比WSL1来说,稳定了很多,基本能够应付所有的Linux开发工具,比开虚拟机方便了好多!! ## 安装步骤 [Window10开发环境搭建(1) | 详细演示WSL2的安装](https://www.bilibili.com/video/BV1aA411s7PJ ......
环境 WSL2 WSL

Go语言中声明和定义变量

在Go语言中,声明和定义变量可以通过不同的方式完成。让我们来了解一下: 1. 变量声明和定义: 变量声明是指在代码中声明一个变量的存在,而变量定义是为该变量分配内存空间并可以同时进行初始化。Go语言的变量声明和定义可以通过以下方式完成: a) 声明并初始化变量: ```go var age int ......
变量 语言

【go语言】1.2.1 Go 环境安装

Go 语言的安装过程非常简单,无论你使用的是哪种操作系统,都可以按照下面的步骤来进行。 ### Windows 系统 1. 前往 Go 语言的官方下载页面:[https://golang.org/dl/ ↗](https://golang.org/dl/) 2. 根据你的操作系统版本选择对应的安装包 ......
语言 环境 Go

使用数据库ORM,以Go语言为例子

数据库 ORM(Object-Relational Mapping)是一种编程技术,用于在关系型数据库(如MySQL、PostgreSQL、SQLite等)和面向对象编程语言(如Go、Java、Python等)之间建立映射关系。它允许开发者通过操作面向对象的方式来访问和操作数据库,而无需直接使用 S ......
例子 语言 数据库 数据 ORM

关于开设go语言专题的说明

这个博客账号已经停更了约5年,期间我经历了比较多的事情,开始几个github开源项目,例如[go-etl](https://github.com/Breeze0806/go-etl)已经有两年。现在已经我在这方面有了许多积累,足够开设相关的专题。不用担心博主会断更,因为相关的内容提纲已经有了腹稿。 ......
语言 专题

Go语言的类型转换

在 Go 语言中,类型转换用于将一个类型的值转换为另一个类型。但是需要注意的是,并非所有类型之间都可以直接转换,类型转换必须满足一定的规则和条件。以下是 Go 语言中类型转换的方法和规则: 1. 方法一:直接类型转换 对于可以相互兼容的基本数据类型(例如整数和浮点数类型),可以使用直接类型转换进行转 ......
语言 类型