GoLand编写 TCP 端口扫描器的详细过程

目录Go 语言编写 TCP 扫描器TCPTCP握手非并发的 TCP 扫描器并发的 TCP 扫描器并发的 TCP 扫描器 - WORKER 池Go 语言编写 TCP 扫描器TCPTCP,也就是传输控制协议(Transmission...

深入解析Golang中JSON的编码与解码

目录1. JSON 简介2. Golang 中的 JSON 编码2.1 结构体的 JSON 编码2.2 切片和映射的 JSON 编码3. Golang 中的 JSON 解码3.1 JSON 解码为结构体3.2 JSON 解码为切片和映射4....

golang的os包用法详解

目录简述os 包中的常用函数HostnameEnvironGetenvSetenvExitGetuidGetgidGetpidGetwdMkdirMkdirAllRemoveos/exec 执行外部命令LookPathos/user 获取当前用户信息Currentos/...

Golang读写二进制文件方法总结

使用 Golang 的 encoding/gob 包读写二进制文件非常方便,而且代码量也非常少。但是在需要自定义二进制格式(自定义二进制格式有可能做到更紧凑的数据表示和更快的读写速度)的场...

Go语言针对Map的11问你知道几个?

目录1. Map 使用时需要注意哪些问题?2. Map 扩容是怎么实现的?3. Map 的 panic 能被 recover 吗?4. 并发使用 Map 除了加锁还有什么其他方案吗?5. sync.Map 和加锁的区别是什...

golang中的jwt使用教程流程分析

目录golang-jwt使用加密解密源码分析SignedStringParseWithClaimsgolang-jwt使用老版本<v4.0.0 为github.com/dgrijalva/jwt-go 新版本https://github.com/golang-jwt/jwt本...

一文详解在Go中如何使用Viper来管理配置

目录为什么选择 Viper把配置值读入 Viper设置默认配置值从配置文件读取配置监控并重新读取配置文件从 io.Reader 读取配置从环境变量读取配置从命令行参数读取配置从远程 ke...

基于Golang开发一个轻量级登录库/框架

目录1.Enforcer2.Config3.Adapter4.Context5.Watcher6.Logger几乎每个项目都会有登录,退出等用户功能,而登录又不单仅仅是登录,我们要考虑很多东西。token该怎么生成?生成什么样...

Golang中深拷贝与浅拷贝详解

目录什么是深拷贝?什么是浅拷贝?示例代码小结什么是深拷贝?深拷贝(Deep Copy)是指原对象与拷贝的新对象互相独立,对其中任何一个对象的改动都不会对另外一个对象造成影响。值类型...

golang grpc配置使用实战

目录什么是PRC&GRPCGo gRPC 环境准备实战编写和调用什么是PRC&GRPCRPC是远程过程调用(Remote Procedure Call)的缩写形式, RPC 的主要功能目标是让构建分布式计算(应用)更容易,在...

一文带你探索Golang计时器的奥秘

目录1. Golang 计时器基础1.1 计时器的创建和启动1.2 计时器的停止1.3 计时器的重置2. Golang 计时器实现原理2.1 堆结构2.2 计时器的堆实现2.3 计时器的堆调整3. Golang 计...

Golang中HTTP路由设计的使用与实现

目录Golang之HTTP路由设计动手编写自己的路由framework/core.goframework/group.go如何实现动态路由改造一下core.go验证Golang之HTTP路由设计为什么要设计路由规则,路由规则...

Go语言基础学习之Context的使用详解

目录前言基本用法Context控制goroutine的生命周期使用 WithValue() 传递数据使用 WithCancel() 取消操作使用 WithDeadline() 设置截止时间使用 WithTimeout() 设置超时时间...

Go Resiliency库中timeout实现原理及源码解析

目录1.go-resiliency简介2.timeout模式3.源码实现如下4.扩展一下1.go-resiliency简介​ 今天看到项目里用到了go-resiliency这个库,库整体比较简单,代码量不大。主要实现go中...

Golang设计模式之外观模式的实现

目录1. 模拟场景2. 代码实现2.1 Hero2.2 LiXin2.3 LiBai2.4 main3. 含义1. 模拟场景实现需求为玩家拥有多个英雄,在部署好英雄之后,只用点击进攻,不用关心每个英雄具体自己的攻...

Go语言如何利用Mutex保障数据读写正确

目录1、实现机制2、基本用法3、race detector4、总结5、思考问题Go 并发场景下如何保障数据读写正确?本文聊聊 Mutex 的用法。Go 语言作为一个原生支持用户态进程(Goroutine)的...

详解Go channel管道的运行原理

目录前言功能channel结构运行原理源码分析总结前言Go推荐通过通信来共享内存,而channel就实现了这一理念。那channel是怎么运行的呢?功能举个例子看下channel的使用效果:packag...

深入探究Golang中log标准库的使用

目录使用源码使用建议Go 语言标准库中的 log 包设计简洁明了,易于上手,可以轻松记录程序运行时的信息、调试错误以及跟踪代码执行过程中的问题等。使用 log 包无需繁琐的配置...

一文详解Golang中new和make的区别

目录1. 简介2. new 函数2.1 new 函数的作用2.2 new 函数的语法3. make 函数3.1 make 函数的作用3.2 make 函数的语法4. 区别对比4.1 分配的类型4.2 返回值类型4.3 使用场景4...

Golang多线程下载器实现高效快速地下载大文件

目录前言请求资源http1.1协议Range\Content-RangeLast-Modified\If-Modified-SinceNewRequest()http.DefaultClient.Do()获取文件名下载文件下载分片合成文件多线程下载总结...

Golang中间件设计示例详解

目录什么是中间件动手设计中间件代码处理framework/core.goframework/group.goframework/node.goframework/context.go中间件例子实际使用什么是中间件中间件:将这些非业务...

Golang分布式注册中心实现流程讲解

目录动手实现一个分布式注册中心日志服务log/Server.golog/Client.go主启动程序LogService服务启动与注册service/service.go服务注册与发现registry/client.goregistry/reg...

Golang-如何判断一个 interface{} 的值是否为 nil

目录引用例子两个 interface 比较interface 与 非 interface 比较参考资料引用起初我会下意识的回答,直接 v == nil 进行判断不就好了吗?
然后翻阅了很多资料终于大致搞定里面...

深入刨析Golang-map底层原理

目录map底层原理刨析1. Go map 的底层结构Go map 的查找Go map 的插入/更新Go map 的删除Go map 的扩容Go map 的遍历map底层原理刨析Go 语言内置了 map 数据结构, map 的底...

golang 查询字典长度

Go语言(golang)是一种尽可能简单高效且安全的编程语言。在Golang的开发中,经常需要对字典进行查询和操作。本文将介绍如何在golang中查询字典长度。在Golang中,字典是一种无序的...

返回顶部
顶部