switch go

Go内存管理

1. 存储基础知识 1.1 计算机的存储体系 从上至下依次是:CPU寄存器、Cache、内存、硬盘等辅助存储设备、鼠标等外接设备 说明:从上至下,访问速度越来越慢,访问时间越来越长 1.2 内存 1)物理内存 通过物理内存条而获得的内存空间,这种存储是没有写入硬盘的,在计算机关机后就会丢失 2)虚拟 ......
内存

fork: retry: No child processes 在go程序中,每个程序启动64个协程会报此错误(每台机器有多个go程序)

解决方案:vi /etc/security/limits.d/20-nproc.conf * soft nproc 4096 root soft nproc unlimited 或者修改4096为unlimited ......
程序 processes 多个 机器 错误

Go 函数多返回值错误处理与error 类型介绍

Go 函数多返回值错误处理与error 类型介绍 目录Go 函数多返回值错误处理与error 类型介绍一、error 类型与错误值构造1.1 Error 接口介绍1.2 构造错误值的方法1.2.1 使用errors包1.2.2 自定义错误类型二、error 类型的好处2.1 第一点:统一了错误类型2 ......
函数 错误 类型 error Go

go使用snmp库查询mib数据

转载请注明出处: OID(Object Identifier)是一种用于标识和唯一命名管理信息库中的对象的标准方式。给定一个OID,可以确定特定的管理信息库对象,并对其进行操作。 go语言使用snmp库中的 k-sone/snmpgo 实现相关mib查询的代码如下: package main imp ......
数据 snmp mib

Go - Changing the Timing for Running Performance Tests

Problem: You want to run performance tests for a specific duration or a specific number of iterations. Solution: You can increase the minimum duration ......
Performance Changing Running Timing Tests

Go - Avoiding Test Fixtures in Performance Tests

Problem: You want to customize the performance tests to avoid benchmarking test fixtures. Solution: You can start, stop, and reset the benchmark timer ......
Performance Avoiding Fixtures Tests Test

Go - Testing a Web Application or a Web Service

Problem: You want to do unit testing on a web application or a web service. Solution: Use the httptest.NewRecorder function to create an httptest.Resp ......
Application Web Testing Service Go

Go - Generating Random Test Inputs for Tests

Problem: You want to generate random test data for running your test functions. Solution: Use fuzzing , which is an automated testing technique to gen ......
Generating Random Inputs Tests Test

2023-10-18:用go语言,给定一个数组arr,长度为n,表示有0~n-1号设备, arr[i]表示i号设备的型号,型号的种类从0~k-1,一共k种型号, 给定一个k*k的矩阵map,来表示型号

2023-10-18:用go语言,给定一个数组arr,长度为n,表示有0~n-1号设备, arr[i]表示i号设备的型号,型号的种类从0~k-1,一共k种型号, 给定一个k*k的矩阵map,来表示型号之间的兼容情况, map[a][b] == 1,表示a型号兼容b型号, map[a][b] == 0 ......
型号 设备 数组 矩阵 arr

Go - Running Tests in Parallel

Problem: You want to speed up testing by running tests in parallel. Solution: Use the t.Parallel function to enable tests or subtests to run in parall ......
Parallel Running Tests Go in

Go - Creating Subtests to Have Finer Control Over Groups of Test Cases

Problem: You want to create subtests within a test function to have finer control over test cases. Solution: Use the t.Run function to create subtests ......
Creating Subtests Control Groups Cases

Go泛型全面讲解:一篇讲清泛型的全部

? 本文力求能让未接触过泛型编程的人也能较好理解Go的泛型,所以行文可能略显啰嗦。但是请相信我,看完这篇文章你能获得对Go泛型非常全面的了解 ......

go分析变量逃逸

Go语言中的变量逃逸指的是编译器将一个变量从局部(函数内部)变量变为堆上分配的全局变量的情况。 变量逃逸通常发生在以下情况: 1. 返回指针:当函数返回一个局部变量的指针时,编译器将不得不将该变量分配到堆上,以便在函数返回后仍然可以访问它。 func createObject() *Object { ......
变量

Go反射终极指南:从基础到高级全方位解析

在本文中,我们将全面深入地探讨Go语言的反射机制。从反射的基础概念、为什么需要反射,到如何在Go中实现反射,以及在高级编程场景如泛型编程和插件架构中的应用,本文为您提供一站式的学习指南。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI ......
终极 全方位 基础 指南

Go - Setting Up and Tearing Down Before and After Tests

Problem: You want to set up data and an environment for testing and tear it down after the test is run. Solution: You can create helper functions or u ......
and Setting Tearing Before After

go封装数据库连接池

package mainimport ( "errors" "fmt" "gorm.io/driver/mysql" "gorm.io/gorm")// DBConfig 定义一个DBConfig结构体,用于存储数据库连接的配置信息,包括主机地址、端口、用户名、密码和数据库名type DBConfi ......
数据库 数据

go语言使用单例模式封装数据库连接池

package singledb import ( "gorm.io/driver/mysql" "gorm.io/gorm" "sync" ) // 数据库连接对象只有一个 var ( db *gorm.DB Once sync.Once //只执行一次某个操作的机制 ) func GetDbIn ......
语言 模式 数据库 数据

Go 提取字符串中url,转换为markdown格式并替换

Go 提取字符串中url,转换为markdown格式并替换 // MakeContentUrlToMarkDown 将字符串中url非markdown格式转[](url)格式 func MakeContentUrlToMarkDown(sourceString string) (resultStri ......
字符串 字符 markdown 格式 url

Go - Making an HTTP Client Request

Problem: You want to make an HTTP request to a web server. Solution: Use the net/http package to make an HTTP request. HTTP is a request - respond pro ......
Request Client Making HTTP Go

菜鸡go后端开发学习笔记1

首先了解项目内容及对应的人员:重要的是产品以及前端。 1、了解项目,理清逻辑,有什么不通顺的地方不清楚的地方及时的与产品进行沟通。 2、在写请求时,主要是前端发送请求给到后端,后端通过逻辑处理获取数据库里面对应的数据,并返回数据。所以请求字段和前端是有交互的,和前端约定接口:请求的路径、请求的方式、 ......
笔记

Go - Using Templates for Go Web Applications

Problem: You want to use Go’s templating system to create a web application. Solution: Use the html/template package to create a web application. pack ......
Applications Templates Using Go for

Go - Serving Through HTTPS

Problem: You want to serve your web application through HTTPS. Solution: Use the http.ListenAndServeTLS function to serve your web application through ......
Serving Through HTTPS Go

从内存使用角度的比较:Go vs Rust

Go和Rust是最近几年非常火的语言,经常有人问到底该怎么选择,特别是谁更适合搭建网络后台服务,哪一个性能更好,稳定性更高。 网络上Go和Rust的比较文章很多,大体上是做一个测试或写几段测试代码,根据运行的时长来比较哪个性能更好,但这种测试可能会陷入误区: 1)比来比去,比的是网络IO,因为这种测 ......
角度 内存 Rust vs

Go - Creating a JSON Web Service API

Problem: You want to create a simple web service API that returns JSON. Solution: Use the net/http package to create a web service API and the encodin ......
Creating Service JSON API Web

Go - Serving Static Files

Problem: You want to serve static files such as images, CSS, and JavaScript files. Solution: Use the http.FileServer function to serve static files. f ......
Serving Static Files Go

用go封装和实现扫码登录

本篇会讲讲token-go扫码登录的封装和实现,给库/框架增加新的功能,最后说明使用方法,源码:https://github.com/weloe/token-go ......

使用go语言开发hive导出工具

前言 新版 hive 提供了 beeline 工具,可以执行SQL并导出数据,不过操作还是有点复杂的,团队里有些同学不会Linux的基本操作,所以我花了亿点点时间写了个交互式的命令行工具方便使用。 效果 命令行工具,就是这么朴实无华。 探索过程 一开始是打算用 bash 脚本,结果发现根本不会写,b ......
语言 工具 hive

【转】,接上面3篇.Implement Sql Database Driver in 100 Lines of Go

原文: https://vyskocil.org/blog/implement-sql-database-driver-in-100-lines-of-go/ Implement Sql Database Driver in 100 Lines of Go 2019.02.18 Go databas ......
Implement Database Driver Lines 100

go 语言 == 引用判断和对象判断的区别

引用判断:只是判断内存地址是不是一样的。 a := []int{1, 2, 3} b := a c := make([]int, len(a)) copy(c, a) fmt.Println(a == b) // true,因为它们引用相同的内存地址 fmt.Println(a == c) // t ......
对象 语言 go

Go - Uploading a File to a Web Application

Problem: You want to upload a file to a web application. Solution: Use the net/http package to create a web application and the io package to read the ......
Application Uploading File Web Go