自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 go操作aws s3

若不想升级go1.20,可以使用v1版本。官方推荐版本,需要go版本>=1.20。: 访问存储桶所需的AccessKey。: 访问存储桶所需的KeyID。: 存储桶所在区域,例。

2024-07-25 20:40:52 426 1

原创 报错:rpc error: code = Unavailable desc = connection error: desc = “error reading server preface: EOF“

今天和Python端商量好我这边使用go通过rpc方式调用Python的接口,发现死活调不通,用的是同一份。关闭代理工具小猫咪,通了!

2024-07-03 21:07:27 419

原创 Golang zap 日志库快速使用

在go项目中,日志记录是必不可少的一部分,可以帮助开发者调试和排查问题以及为系统的运行状况提供数据。本文介绍了go业内非常流行的zap日志库,同时结合Lumberjack实现日志的切割和归档。

2024-06-27 11:29:33 401

原创 Hexo 博客搭建并部署到 GitHub Pages(2024最新详细版)

五分钟快速搭建 Hexo 博客

2024-06-22 11:29:37 3319

原创 websocket: close 1000 (normal) --解决方案

断开 WebSocket 时出现这个提示 error: websocket: close 1000 (normal),并不是错误,是 WebSocket 正常关闭连接的提示信息。可以通过进一步判断处理该信息。

2024-06-22 10:05:48 483

原创 Docker搭建rabbitmq环境并开启管理页面

STATUS 为 UP 表示容器启动成功,并复制容器ID。http://服务器IP地址:15672,用户名和密码默认都是。页面管理插件安装成功,退出容器执行。拿到容器ID,我的是。

2024-06-20 21:46:26 362

原创 Docker 安装 Nginx 并挂载目录

为什么要创建挂载目录?因为docker容器内部有自己的文件系统,在主机创建挂载目录并关联 Nginx 容器的配置目录后,以后可以通过修改主机下的配置目录文件来直接影响到容器内的配置。把 Nginx 容器中的文件复制到主机。或者打开浏览器输入服务器 IP 验证。查看运行状态,如果启动失败执行。出现以下内容说明安装成功。

2024-06-20 17:20:16 754

原创 Go 操作 Redis

记录如何在 Go 语言中使用go-redis包操作 Redis 的几种常见数据类型,包括字符串(Strings)、哈希(Hashes)、列表(Lists)、集合(Sets)和有序集合(Sorted Sets)。

2024-06-19 07:00:00 373

原创 网站证书过期重新申请还是失效

前几天网站证书过期了,去阿里云申请了免费SSL证书+各种配置宝塔面板还是显示证书无效。研究了会儿发现是之前配置了又拍云CDN,那边的证书还用的过期前的。解决方法:去又拍云CDN控制台重新修改添加最新的证书就行了。

2024-06-18 11:11:43 260

原创 Gin + Gorm 实现增删改查

执行 go run main.go 项目启动在8080端口。新建项目,main 函数import 他们的包。因为项目简单,因此所有代码都放在 main 中。dsn 处换成自己的 MySQL 配置信息。接下来最重要的一步,一定要。

2024-06-18 10:36:08 672

原创 Redis分布式锁(面试版)

因此,当一个用户请求进来的时候,通过setNX来设置一个键(值随意),当里面没有值的时候,返回true,加锁成功,,其他请求再来的时候发现无法上锁了,只能进行等待了。释放锁使用delete操作。

2024-06-17 08:00:00 136

原创 gin开发WebSocket并开启SSL

这段时间工作需求用到实现双工通信,因此选择WebSocket来开发,简单记录一下。

2024-06-16 09:00:00 512

原创 关于缓存一致性的问题总结(面试版)

主动更新策略分为两个场景,一种是读操作(读缓存),一种是写操作(写缓存)。得出结论选删除缓存,因为更新缓存可能会存在过多的冗余数据,对缓存利用率也不高,redis是基于内存的,内存资源是很宝贵的。先删除缓存,后更新数据库先更新数据库,后删除缓存延迟双删两个操作的一致性问题。

2024-06-15 11:42:49 289

原创 golang后端常用开发环境配置

go语言后端环境快速搭建

2024-06-15 11:21:18 180

原创 golang秋招面试题整理

闭包是指一个函数值,它引用了其外部作用域中的变量。该函数值可以访问并修改其外部作用域中的变量,即使在其声明的位置已经退出作用域的情况下也可以。由于闭包引用了外部作用域中的变量,这些变量的生命周期可能会被延长,导致内存占用增加。对于循环中的闭包,如果不小心使用,可能会导致意外的行为,如最终状态错误。答:1)本该分配到栈上的变量,跑到了堆上,这就导致了内存逃逸。2)栈是高地址到低地址,栈上的变量,函数结束后变量会跟着回收掉,不会有额外性能的开销。

2024-06-14 10:20:23 1210 1

原创 c++模板实现冒泡排序

c++模板实现的冒泡排序(vs2019)模板实现的冒泡排序可以对任意数据类型的数据进行排序,这样节省了大量的时间去写重复的代码.在此之前,我将交换任意数据类型的模板和打印任意数据类型数据的模板也写了出来,这样用起来很方便.在这里插入代码片#include<iostream>using namespace std;//交换两个数的模板template<class T&...

2019-10-16 21:30:36 1529 2

空空如也

空空如也

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

TA关注的人

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