module go
Go 自动生成代码工具 一( go-zero 中 goctl rpc 命令代码生成原理)
总共分为三篇: 1. 分析`go-zero`中 ` coctl rpc` 通过一个` proto`文件生成一系列文件。 2. 模仿这个原理,结合`protoc` 生成代码的特性,把gin的接口定义,也放入proto文件中,自动生成gin的接口代码。 3. 自动生成项目中error错误定义文档。(通过 ......
nginx添加nginx_upstream_check_module模块,Linux下
1、下图为本地虚拟机nginx目录 2、cd ./nginx-1.14.2 进入nginx 目录 输入命令 :patch -p1 < ../nginx_upstream_check_module-master/check_1.14.0+.patch 3、yum -y install gcc-c++ ......
ModuleNotFoundError: No module named 'import_export'
当你遇到 "ModuleNotFoundError: No module named 'import_export'" 错误时,这表示你的 Python 脚本或应用程序试图导入名为 'import_export' 的模块,但是 Python 在其模块搜索路径中找不到它。 为解决此问题,你需要使用 p ......
【Linux API 揭秘】module_init与module_exit
module_init和module_exit是驱动中最常用的两个接口,主要用来注册、注销设备驱动程序。
并且这两个接口的实现机制是一样的,我们先以module_init为切入点分析。 ......
go map的坑
range时不能动态的增加map的range范围 golang的map是hash表实现的,hash表的遍历就是遍历所有的桶,所以新添加的元素可能出现在之前遍历过的桶中,这样就会有些新添加的元素可能遍历不到。 实际生成环境中,不建议遍历一个正在写入的map,这并不是一种好的设计,如果确实有这样的需求, ......
electron+go开发记录
// 设置应用通过防火墙,electron方面 const command = `netsh advfirewall firewall add rule name="mange" dir=in program="${mange}" action=allow` // cmd允许应用通过防火墙的命令 / ......
Prometheus Go client library 详解
介绍 Prometheus 支持 4 种 指标类型,分别是 Counter、Gauge、Histogram 和 Summary。 Counter 指标类型,指标值是只能递增,不能递减的数值。需要注意的是,当 Prometheus server 重启时,指标值会被重置为 0。该指标类型可用于统计接口的 ......
在 Go-Kratos 框架中优雅的使用 GORM 完成事务
准备工作 创建新项目 kratos new helloworld cd helloworld # 拉取项目依赖 go mod download # 项目中的 config 等请自行修改 添加事务 如果您还不了解 Kratos、 mysql 事务 和 GORM 的话请先了解一下。 data 层承载事务 ......
2023-11-25:用go语言,给定一个数组arr,长度为n,表示n个格子的分数,并且这些格子首尾相连, 孩子不能选相邻的格子,不能回头选,不能选超过一圈, 但是孩子可以决定从任何位置开始选,也可以
2023-11-25:用go语言,给定一个数组arr,长度为n,表示n个格子的分数,并且这些格子首尾相连, 孩子不能选相邻的格子,不能回头选,不能选超过一圈, 但是孩子可以决定从任何位置开始选,也可以什么都不选。 返回孩子能获得的最大分值。 1 <= n <= 10^6, 0 <= arr[i] < ......
pip install报错"Can't connect to HTTPS URL because the SSL module is not available"
pip时install报错 一、故障现象 [root@jenkins /data/package/openssl-1.1.1n]# pip3 install emoji WARNING: pip is configured with locations that require TLS/SSL, h ......
go 上下文:context.Context
go 上下文:context.Context 原创 孟斯特 孟斯特 2023-11-17 08:30 发表于北京 收录于合集#Golang92个 Go语言中的上下文(Context)是一种用于在 Goroutines 之间传递取消信号、截止时间和其他请求范围值的标准方式。context 包提供了 C ......
Jaeger Client Go 链路追踪|入门详解
目录 从何说起 Jaeger 部署 Jaeger 从示例了解 Jaeger Client Go 了解 trace、span tracer 配置 Sampler 配置 Reporter 配置 分布式系统与span 怎么调、怎么传 HTTP,跨进程追踪 客户端 Web 服务端 Tag 、 Log 和 R ......
报错 ImportError: cannot import name 'Celery' from partially initialized module 'celery'
# 目录结构问题 原来目录结构: 改为: 把check_result produce_task拿出来 ......
go--条件判断 if、switch
if 基本语法 if 条件A{ ... }else if 条件B{ ... }else if 条件C{ ... }else{ ... } 例子 package main import "fmt" func main() { var fruit string = "6 个苹果" var waterme ......
Go标准库学习:strings和bytes
strings包和bytes包 strings包和bytes包非常像,几乎所有函数都有string和[]byte两种接口,其中前者被实现在strings包中,而后者被是现在bytes包中,所以这里将这两个包一起学习。 官方文档: strings包:https://pkg.go.dev/strings ......
go-view 依赖库
go-view 依赖库 const packageReadme = { "name": "go-view", "version": "2.2.6", "engines": { "node": ">=12.0" }, "scripts": { "dev": "vite --host", "build" ......
2023-11-22:用go语言,给你一个长度为 n 下标从 0 开始的整数数组 nums。 它包含 1 到 n 的所有数字,请你返回上升四元组的数目。 如果一个四元组 (i, j, k, l) 满足
2023-11-22:用go语言,给你一个长度为 n 下标从 0 开始的整数数组 nums。 它包含 1 到 n 的所有数字,请你返回上升四元组的数目。 如果一个四元组 (i, j, k, l) 满足以下条件,我们称它是上升的: 0 ⇐ i < j < k < l < n 且 nums[i] < n ......
学习mongo和go
mongo: moduleData, ok := result.Lookup("context1", "context2").DocumentOK() result.Lookup("context1", "context2") 用于检索名为 "content1" 的字段,并且该字段的值又是一个嵌套的 ......
基于go-zero的api网关示例
以下是基于 go-zero 框架的 API 网关示例。这个示例包括一个简单的 API 网关,它接收 HTTP 请求,将请求路由到不同的服务,并返回响应。 创建项目 首先,在 go-zero 仓库中创建一个新的目录: mkdir api-gateway cd api-gateway 创建 Go 文件 ......
基于go-zero的rpc服务示例
以下是一个基于 go-zero 框架的简单 RPC 服务示例,该示例包括一个服务端和一个客户端通过 gRPC 进行通信。 服务端 1、定义 .proto 文件 在 rpc/add 目录下创建 adder.proto 文件,定义 RPC 服务: syntax = "proto3"; package a ......
ModuleNotFoundError: No module named 'pip._vendor.progress'
出现异常: root@linaro-alip:/data/FantClient# ./venv_py39_rk/bin/python3 -m pip install qrcode -i https://mirrors.aliyun.com/pypi/simple Traceback (most re ......
Go使用开源库go-excelize操作Excel文件
以下是一个示例代码,读取一个 Excel 文件并打印其中的所有单元格值: package main import ( "fmt" "github.com/30x/go-excelize" ) func main() { // 打开 Excel 文件 f, err := excelize.OpenFi ......
riffusion调用diffusers出错:No module named ‘diffusers.modeling_utils
追溯错误来源: C:\Users\Administrator\riffusion-main\riffusion\riffusion_pipeline.py from diffusers.pipline_utils import DiffusionPipeline 意思是在安装路径里有个代码想impo ......
go ants使用
NewPoolWithFunc -> func(data interface{}) -> data.(Task) -> Task.Do 上面的这些函数都是同步的,添加到 NewPoolWithFunc中后,执行 invoke会变成异步 NewPool和NewPoolWithFunc本质是一样的,都是 ......
go errgroup用法
草稿 errgroup就是在waitgroup基础上封装了一层。 我还是不喜欢 go的这个控制goroutine的方式。 只贴一下代码: func main() { eg, ctx := errgroup.WithContext(context.Background()) for i := 0; i ......
[Go] "Method Declaration" on a custom type
package data // new type type distance float64 type distanceKm float64 // add ToKm method to distance type func (miles distance) ToKm() distanceKm { / ......
pb.go 转 proto 文件
使用python将pb.go 文件转为proto文件 编程语言不限,挺简单的,不熟悉python的可以看看逻辑,自己改下 import os import re # 处理字段选项 def dispose_field_type(ft: str): ft = ft.replace("*", "") if ......
【go】【test】benchmark
@目录写在前面 go 测试基础测试fib.gotest_fib.go使用内存generate_test.go测试参数测试generate_test.go参数测试timeRestnullsort_test.go 测试开始记时⌛️和测试结束计时⌛️测试参考资料 写在前面 相关博文 个人博客首页 免责声明 ......
go使用context.withtimtout取消一个超时操作
3 使用context.WithTimeout: package mainimport ("context""fmt""time")func main() {timeout := 5 * time.Secondctx, cancel := context.WithTimeout(context.Ba ......