自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 GO中map底层详解

bucket数组中每个元素都是bmap结构的,bmap中存储着8个key-value的键值对,如果是满了的话,当再来一个键值对的时候就会放到下一个溢出桶中,同时是通过这个overflow进行连接。时机:溢出桶过多:由于map中不断的put和delete key,桶中可能会出现很多断断续续的空位,这些空位会导致连接的bmap溢出桶很长,导致扫描时间边长。当我们遍历一个正在迁移的Map时,新的和旧的就会遍历,如果一个旧的的桶已经迁移走了,那么就直接跳过,反正不在旧的就在新的里。

2024-03-26 16:24:49 1547

原创 Go中channel的底层原理(后附常见面试题)

本文主要介绍go中channel和一些常见的面试题

2024-03-21 09:17:14 1911 1

原创 详解go切片的底层(后附常见切片面试题)

在G0语言中,数组和切片都是用于存储一组数据的数据结构,G0语言的切片类型属于引用类型,同属引用类型的还有字典类型、通道类型、函数类型等;4.传递方式不同:数组作为函数参数时传递的是整个数组的副本,即在函数内部无法修改原始数组:而切片作为函数参数时传递的是切片的引用,即在函数内部可以修改原始切片。cap : 当前 slice 的容量,同时也是底层数组 array 的长度, 8 bytes cap的长度是大于等于len的。a.当新切片需要的容量cap大于两倍扩容的容量,则直接按照新切片需要的容量扩容;

2024-03-20 22:15:02 473

原创 【无标题】Docker安装MongoDB并用Go测试连接

最近项目需要写一个评论的接口,并且将数据放到MongoDB中,立马去学习MongoDB,一看安装MongoDB需要跟mysql一样配置一大堆东西,看着就头疼,既然之前学习了docker那么我为什么不能在docker上搞那!说干就干提示:以下是本篇文章正文内容,下面案例可供参考。

2023-08-22 21:42:57 189 4

原创 Centos7下Docker部署go-web项目

目前项目需要用到三个容器:自身项目,mysql,redis。利用docker网络将三个容器进行通信。将项目连带着dockerfile传送到虚拟机上。主机:虚拟机ip地址(ifconfig查看)密码:-e修改环境变量设置的密码。端口:映射的端口号:3310。

2023-08-10 21:15:12 188 2

原创 Docker命令

rmi #移除一个或多个镜像(无容器使用该镜像才可删除,否则删除该镜像需删除相关的容器才可以继续或者-f强制删除)docker rm 容器id //删除指定的容器,不能删除正在运行的容器 强制删除运行的rm -f。docker rm -f $(docker ps -aq) //删除所有的容器。docker info #显示docker的系统信息,包括镜像和容器的数量。pull #从docker镜像源服务器拉取指定镜像或者镜像库。create #创建一个新的容器,同run,但是不启动容器。

2023-08-06 23:01:27 51 2

原创 golang图片验证码

通过调用GetCaptcha函数,通过引用github.com/dchest/captcha库中的captcha.New()生成 id然后在获取图像的路径。

2023-08-02 20:46:11 731

原创 Viper(Go语言管理神器)

1.支持读取JSON,TOML,YAML,HCL,envfile和java properties等多种不同类型配置文件2.可以监听配置文件的变化,并重新加载配置文件3.读取系统环境变量的值4.读取存储在远程配置中心的配置数据,如ectd,Consul,firestore等系统,并监听配置的变化5.从命令行读取配置6.从buffer读取配置7.可以显示设置配置的值。

2023-07-29 20:59:55 200 1

原创 Go-Web实现短信登录(基于阿里云短信框架)

二.阿里云申请2.1注册登录阿里云(阿里云登录页 (aliyun.com)) 登录后钉钉会发送信息,然后加入相关机器人,并领取新人福利(免费发送100条短信,没有了需要重新充值。)有个签名管理和模板管理都需要进行申请,需要1-2小时,请耐心等待。点击右上角个人头像找到AccessKey管理 通过创建AccessKey获取AccessKey ID 和 AccessKey Secret (这两个后面会有用的并且 AccessKey Secret需要你手动保存一下。 ) 2.4绑定测试手机号 下面代码需要

2023-07-28 21:16:12 143 3

原创 go实现支付宝扫码支付(沙箱环境)

现如今,手机支付已相当普遍,而作为开发人员应该对手机支付操作有所了解。而支付宝接口是支付宝提供的一个接口,用来对接软件应用程序在进行金钱交易使用。然后对于编程爱好者而言,想学习这一点就有点难,因为要想使用支付宝接口,必须前提是使用软件应用程序,软件应用程序需要向支付宝申请,提交一系列资料,这一点是实现不了的。这就对开发者增加了一定的难度,因为产品没有上线,然后需要对接支付宝接口就是很大的问题,所以出现了沙箱环境,具有虚拟的用户和管理员账户,进行实验测试是否对接成功。

2023-07-23 23:28:39 489 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除