const go

windows 下 用go 监控进程

这里模拟QQ退出后自动重启 只要修改 processName 为你所需要的进程exe processNamePath 为你所需要的进程路径 package main import ( "bytes" "errors" "fmt" "os" "os/exec" "regexp" "strconv" " ......
进程 windows

Go:Missing type in composite literal

在使用含字符串数组的结构体时,我出现了以下问题 1 package main 2 3 import "github.com/gin-gonic/gin" 4 5 type MyJson struct { 6 Functions []string `json:"functions"` 7 Desc s ......
composite Missing literal type Go

个人随笔 —— 基于 go 语言实现的轻量化 workflow 分布式引擎插件

# 背景 组内有很多项目都涉及复杂的任务流场景: * 集群创建、删除等生命周期管理 * k8s 资源申请销毁 * .... 这些场景都有几个共同的特点: 1. 流程耗时且步骤复杂,需要几十步操作,其中包含云资源申请、脚本执行、接口调用等,且相互存在依赖关系。 2. 任务量随着业务增长而快速迭代,比如 ......
分布式 插件 workflow 随笔 语言

GO语言配置管理神器-Viper中文教程

[Viper](https://github.com/spf13/viper)是适用于Go应用程序的完整配置解决方案。它被设计用于在应用程序中工作,并且可以处理所有类型的配置需求和格式。 # Viper [Viper](https://github.com/spf13/viper)是适用于Go应用程 ......
神器 语言 教程 Viper

go语言包管理

包 包由多个文件和目录组成 使用 package <包名> 来定义包名 包名一般都采用小写,符合标识符要求 当前目录名和 package <包名> 中的包名不需要一致,但最好保持一致 同级文件归属一个包,就是说每个包目录的当前目录中,只能统一使用同一个package的包名,否则编译出错 一般来说,开 ......
语言

go 结构体嵌套interface

package main import "fmt" //结构体嵌套接口,可以在结构体绑定的方法直接实现接口中的方法,直接调用接口中的方法 type aa interface{ a() b() } type world struct{ aa Age int } func(h world)a(){ fm ......
interface 结构 go

大白话讲讲 Go 语言的 sync.Map(二)

上一篇文章 [《大白话讲讲 Go 语言的 sync.Map(一)》](https://imlht.com/archives/234/) 讲到 entry 数据结构,原因是 Go 语言标准库的 map 不是线程安全的,通过加一层抽象回避这个问题。 当一个 key 被删除的时候,比如李四销户了,以前要撕 ......
大白话 大白 语言 sync Map

代码随想录 go语言

**Go的内存对齐:** 64位系统一般指的是寻址的大小,用2^64个地址,每个地址上面都有一个字大小的内存,一个字可以是1字节,2字节,4字节等等。CPU 始终以字长访问内存,如果一个变量存储在两个字中,那么CPU就需要寻址两次。所以内存对齐就是让变量尽量不要跨字存储。 ......
随想录 随想 语言 代码

C++Const变量的存储位置

## const变量/对象的存储位置 ### const局部变量 const局部基础变量和自定义变量都存储在栈上 ~~~c struct diy_class{ int a; int b; diy_class(int a, int b ) : a(a), b(b){ } }; int main() { ......
变量 位置 Const

go-2

1.对Go的理解 它是一种编译型,并发型,拥有GC的编程。它不是面向对象语言,不具备封装,继承和多态,但是可以实现,通过interfance{}接口来实现多态性。 没有做异常处理,不能像java一样try...catch...,但是可以通过panic,defer和recover来处理。 其他语言的函 ......
go

go通过docker sdk来对容器资源做限制

# 创建容器时 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types" "github.com/docker/docker/api/types/container" "github.c ......
容器 docker 资源 sdk

go语言操作docker终止容器

代码部分 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types/container" "github.com/docker/docker/client" ) func main() { ......
容器 语言 docker

go通过docker sdk将容器中的文件或者文件夹复制到本地

第一步:需要创建docker客户端 第二步:将文件复制出来,但是复制出来的文件无论文件还是文件夹都会是tar存档的形式 第三步:解包 ```go package main import ( "archive/tar" "context" "fmt" "io" "os" "path/filepath" ......
文件 容器 文件夹 docker sdk

go通过docker sdk访问复制文件到容器中

第一步:需要先判断容器中的文件夹是否存在 第二步:将需要拷贝的文件打包成tar存档 第三步:读取打包的tar存档,然后拷贝到容器中 ```go package main import ( "archive/tar" "context" "fmt" "io" "os" "path/filepath" ......
容器 文件 docker sdk

go通过docker sdk操作镜像

# 获取所有镜像 ```go package main import ( "context" "fmt" "github.com/docker/docker/api/types" "github.com/docker/docker/client" ) func main() { // 设置远程Doc ......
镜像 docker sdk

GO 指针数据类型的使用

转载请注明出处: 在Go语言中,指针类型允许直接访问和修改某个变量的内存地址。通过使用指针,我们可以在函数之间共享数据或者在函数内部修改外部变量的值。 以下是关于Go语言指针类型的一些重要语法和示例: 定义指针变量: 使用*表示指针类型,并将其放置在变量类型前面。例如:var ptr *int声明了 ......
指针 类型 数据 GO

大白话讲讲 Go 语言的 sync.Map(一)

阅读本文大约需要 4.25 分钟。 程序是枯燥乏味的。 在讲 sync.Map 之前,我们先说说什么是 map(映射)。 我们每个人都有身份证号码,如果我需要从身份证号码查到对应的姓名,用 map 存储是非常合适的。 map[000...001] = 张三 map[000...002] = 李四 . ......
大白话 大白 语言 sync Map

debug go fuzz test

List all package go list ./... Run testcase dlv test --build-flags='api/tests/fuzz' -- -test.run ^FuzzGetNodes$ dlv test api/tests/fuzz -- -test.run F ......
debug fuzz test go

go基于docker sdk用dockerfile构建镜像

测试了好久,发现,单独读取dockerfile文件,然后上传,是无法构建成功的 构建的时候总会报无法找到dockerfile文件 `Error response from daemon: Cannot locate specified Dockerfile: Dockerfile` 查资料发现需要将 ......
dockerfile 镜像 docker sdk

go语言操作docker删除所有停止的容器

逻辑是通过过滤器,过滤掉,状态为exited的容器,然后再遍历删除 代码部分 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types" "github.com/docker/docker ......
容器 语言 docker

go通过docker sdk进入容器执行命令

代码部分 ```go package main import ( "context" "fmt" "io" "os" "github.com/docker/docker/api/types" "github.com/docker/docker/client" ) func main() { // 设 ......
容器 命令 docker sdk

go语言操作docker重启容器

代码部分 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types/container" "github.com/docker/docker/client" ) func main() { ......
容器 语言 docker

go语言操作docker删除容器

代码部分 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types" "github.com/docker/docker/client" ) func main() { // 设置远程Do ......
容器 语言 docker

关于go语言常量的那些事

相对于变量,常量是恒定不变的值,多用于定义程序运行期间不会改变的那些值。 常量的声明和变量声明非常类似,只是把var换成了const,常量在定义的时候必须赋值。 const 常量名[数据类型] = value 项目实战常见场景 数据类型可以忽略不写,Golang 编译器会⾃动推断出数据类型。 在使⽤ ......
常量 语言

go语言操作docker创建容器

开启远程api的方式 https://www.cnblogs.com/guangdelw/p/17562539.html 代码部分 ```go package main import ( "context" "fmt" "os" "github.com/docker/docker/api/types ......
容器 语言 docker

【八股文 01】const 关键字

# 1 const 含义 被它修饰的值不能改变,是只读变量。**必须在定义的时候就给它赋初值** # 2 const 作用 1、修饰变量,说明该变量不可以被改变 2、修饰指针,分为指向常量的指针(pointer to const)和自身是常量的指针(常量指针,const pointer)和前面两种的 ......
八股文 八股 关键字 关键 const

go 单链表的增加,删除,翻转

package main import "fmt" //单链的数据结构 type Node struct { value int next *Node } type List struct { head *Node } //添加成有序的链表 //1.如果是空链表则插入链表第一个元素 //2.升序插入 ......
go

我是如何组织 Go 代码的(目录结构 依赖注入 wire)

## 背景 对于大多数 Gopher 来说,编写 Go 程序会直接在目录建立 main.go,xxx.go,yyy.go…… 不是说不好,对于小型工程来说,简单反而简洁明了,我也提倡小工程没必要整一些花里胡哨的东西。 毕竟 Go 语言作为现代微服务的开发新宠,各个方面都比较自由,没有很多约束。我想, ......
结构 代码 目录 wire Go

go通过API的方式操作docker

# 配置docker支持远程操作API 在Linux系统上启用Docker远程使用Docker API的步骤 ## 1、编辑Docker配置文件 打开Docker配置文件,通常位于/etc/docker/daemon.json。如果该文件不存在,则创建它。 ```bash vim /etc/dock ......
方式 docker API

go语言读取docker容器的日志

# 使用Docker SDK: 要使用Docker SDK来读取Docker容器的日志,您需要安装Docker SDK并使用其提供的函数进行操作。 ## 安装Docker SDK: ```bash go get -u github.com/docker/docker ``` ## 获取容器ID `` ......
容器 语言 docker 日志