自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 DTM分布式事务管理器

文档:介绍 | DTM开源项目文档

2023-08-15 18:29:33 84

原创 记-vue强制刷新组件

vue 强制刷新组件 - 简书

2022-02-10 15:19:54 325

原创 富文本vue-quill-editor整合七牛云上传图片、视频

参考大佬思路:改造vue-quill-editor:实现图片上传到服务器再插入富文本 · Issue #2 · NextBoy/skill · GitHub概述1、Element UI:上传使用的是Element 的el-upload组件。2、quill-editor:富文本处理。前期准备1、七牛云指定空间的上传token,得通过服务器获取。func GetToken() string { putPolicy := storage.PutPolicy{ //七牛云对象存储空间

2021-11-23 15:50:55 1066

原创 记-抽奖类的并发处理

对于抽奖类型的业务,同时并发去修改某一条数据的剩余量,先读取再修改的方式会造成数据的异常。于是采用自减的方式,修改的字段为无符号整数。

2021-06-08 16:37:39 238

原创 gorm日记

1、更新时0值或空值被忽略处理(使用map) data := make(map[string]interface{}) data["store_name"]="" data["store_addr"]="" data["avg_pay"]=0 data["tel"]="" data["business_hours"]="" err = tx.Table("ft_ad_attached").Where("ad_id = ?", ad.Id).Update(data).Error

2021-06-02 10:43:21 101

原创 Tips

当数值会越界时:if t < 0 { t = 1<<63 - 1 // math.MaxInt64 }

2021-05-12 16:35:14 63

转载 MySQL-索引

索引介绍索引是对数据库表中一列或多列的值进行排序的一种结构。生活中随处可见索引的例子,如火车站的车次表、图书的目录等。它们的原理都是一样的,通过不断的缩小想要获得数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是我们总是通过同一种查找方式来锁定数据。索引的优缺点优点:1、索引大大减小了服务器需要扫描的数据量,从而大大加快数据的检索速度,这也是创建索引的最主要的原因。2、索引可以帮助服务器避免排序和临时表3、索引可以将随机IO变成顺序IO4、索引对于Inn

2021-03-25 17:42:49 114

原创 数据结构-链表

链表的基础讲解参考:https://zhuanlan.zhihu.com/p/29627391链表、数组对比数组缺点数组必须占用整块、连续的内存空间,如果声明数组过大,可能回导致“内存不足”。 数组不够灵活,一旦需要扩容,会重新申请连续整块空间,并需要把原数组的数据全部拷贝到新申请的空间。数组的优势,在于可以方便的遍历查找需要的数据。在查询数组指定位置(如查询数组中的第4个数据)的操作中,只需要进行1次操作即可,时间复杂度为O(1)。但是,这种时间上的便利性,是因为数组在内存中占用了连续

2021-03-09 18:02:11 106

原创 golang中slice的扩容机制

在golang中slice是一个指向数组的指针结构体。 这个结构体有三个属性:指向数组指针 len: slice中元素的数量 cap:slice占用内存数量其概念为"动态数组",及数组的容量大小(cap)会随着数组的实际大小(size)变化而变化(扩容)。扩容机制:如果切片的容量小于1024个元素,那么扩容的时候slice的cap就翻番,乘以2;一旦元素个数超过1024个元素,则乘以1.25,即每次增加原来容量的四分之一。拷贝问题:slice的拷贝属于引用拷贝。拷贝后的slic

2021-03-02 14:41:06 1182

原创 golang的锁

一、为什么需要锁举例:有一个变量4,有两个协程对这个变量执行+1操作。如果没有锁,那么这两个协程可能同时读,结果都是读到4去执行+1操作,最后的结果是5。锁的作用:在并发的情况下,多个线程或协程同时去修改一个变量。使用锁能保证在某一时间点内,只有一个协程或线程修改这一变量。其实就是抢锁,抢到锁的才能进行操作。二、互斥锁 Mutex互斥锁有两个方法:加锁、解锁。一个互斥锁只能同时被一个 goroutine 锁定,其它 goroutine 将阻塞直到互斥锁被解锁(重新争抢对互斥锁的锁定)

2021-02-25 17:17:17 222

原创 golang下载与安装

golang下载官方下载地址:https://golang.org/dl/由于官方地址被墙,推荐go语言中文网下载:https://studygolang.com/dlgolang安装安装过程就是点点点,没啥好说的。安装位置,我的在D:\go1.14环境变量配置:设置变量名GOROOT,变量值D:\go1.14(安装目录)修改系统变量Path,添加D:\go1.14\bin (windows安装以后会自动添加)安装完成以后命令行输入go version查看版本:C:\U

2021-02-25 14:53:50 464

转载 Redis内存大小及淘汰策略

目录Redis占用内存大小Redis的内存淘汰如何获取及设置内存淘汰策略LRU算法LRU在Redis中的实现LFU算法Redis占用内存大小我们知道Redis是基于内存的key-value数据库,因为系统的内存大小有限,所以我们在使用Redis的时候可以配置Redis能使用的最大的内存大小。1、通过配置文件配置通过在Redis安装目录下面的redis.conf配置文件中添加以下配置设置内存大小//设置Redis最大占用内存大小为100Mmaxmemory.

2021-02-25 11:26:40 418

空空如也

空空如也

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

TA关注的人

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