自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Go第三方框架--gorm框架(二)

主要讲解gorm 中dml操作实现逻辑

2024-10-25 16:36:54 1054

原创 Go第三方框架--gorm框架(一)

gorm简介,第一篇主要介绍初始化和自动装载。

2024-10-24 21:48:09 1966

原创 回表操作是啥

原文

2024-10-18 15:34:08 114

原创 聚集索引和非聚集索引

原文

2024-10-18 15:26:25 105

原创 Go第三方框架--gin框架(三)

主要讲解 tcp连接的建立,路由树的查找和挂载函数的执行

2024-09-14 18:21:38 1456 2

原创 Go源码--channel源码解读

channel源码粗讲

2024-07-05 20:32:33 1160 6

原创 Go源码--context包

主要讲解context包

2024-06-30 19:42:26 1256

原创 Go源码--sync库(3):sync.Pool(2)

sync.Pool第二部分

2024-06-16 19:43:01 491 1

原创 Go源码--sync库(3):sync.Pool(1)

sync.Pool第一部分

2024-06-16 19:40:46 1159

原创 Go源码--sync库(2)

这边文章主要讲解 Sync.Cond和Sync.Rwmutex

2024-06-07 19:39:37 1131 1

原创 Go源码--sync库(1)

这篇主要介绍 sync.Once、sync.WaitGroup和sync.Mutex

2024-05-24 22:10:01 1009

原创 Go源码--Strconv库

Strconv 库是一些跨类型的转换函数集合,大家应该很熟悉。源码没有什么难点,主要是面试题有可能会出这种类型的,所以简单介绍下,主要介绍 以下两种常用转换,其他的没细研究,感兴趣的可以看看。

2024-04-23 20:55:25 635 1

原创 Go源码--Strings库

strings库 存储了 一些针对 字符串的具体操作 其 代码短小精悍 可以学习到很多编程的思路 尤其是 涉及到字符串使用性能的方面,其源码库有好多的优秀案例可以学习。向强者对齐不一定成为强者,但向弱者对齐一定变为弱者。介绍思路是先介绍 strings 库的一些基础 结构体和函数,它们被其它函数调用,然后挑选几个比较有代表性的函数介绍,下面开始吧一直在用stings包,现在梳理了以便其源码,更加佩服大师们的能力了,考虑的很细节,而且优化大部分都是在最底层优化,考虑的层深至少是字节码和底层交互时的深度。

2024-04-20 18:47:55 893

原创 Go第三方框架--ants协程池框架

ants是站在巨人的肩膀上开发出来的,这个巨人是goroutine,这是连小学生都知道的事儿,那么为什么不继续使用goroutine(以下简称go协程)呢。这是个思考题,希望讲完本文大家可以有个答案。go协程只涉及用户态的使用,不涉及内核态和两态的切换,所以非常轻便,通常一个协程大概只占用2k的内存,比线程更轻量级,而且其还有特别高效的GMP协程调度算法,使得go语言编写并发程序简单和高效。

2024-04-10 22:32:55 2289

原创 Go第三方框架--gin框架(二)

通过代码追踪 可以看到 第二个节点建立时 跳过了 root节点初始化和 第一个节点建立的代码,来到了 addRoute函数的核心部分。至此 第一个 节点便建立起来了,TestGin的第 二行执行完毕后,其engine结构如下图,可以看到root节点确实如分析的一般。至此 树节点的建立就梳理完毕了,注意只是梳理了不带通配符的路由处理逻辑,关于通配符 例如 :* 等特殊字符请自行梳理。建立后树的结构如下(handler也就是 注册的函数 在路径插入时插入,故不在图中展示,只在有特殊情况时说明。

2024-03-25 21:19:48 1568

原创 Go第三方框架--gin框架(一)

gin 框架早期版本是基于julienschmidt/httprouter 发展而来,julienschmidt/httprouter是一个高性能的http请求器。但是随着gin框架的发展 它逐渐发展出了自己的 路由实现器,实现源码也部分参考 julienschmidt/httprouter 这也就是为什么好多资料都说 gin基于julienschmidt/httprouter 但是你去看它最新的源码却没发现针对 julienschmidt/httprouter的引用。

2024-03-25 21:19:36 2434

转载 linux阻塞模型----epoll

从操作系统的角度讲解了epoll,讲解比较好。

2024-02-19 15:05:47 93

原创 Go语言内存管理(堆栈、内存分配、垃圾回收)

ff

2022-10-24 21:05:25 326

原创 mysql的数据加载到内存的机制(冷热数据、lru算法)

钉钉

2022-10-02 19:45:26 700

原创 redis基本对象

东方大道

2022-09-29 13:33:28 366

原创 Mysql基础----MySQL 主从复制

方法

2022-09-27 18:03:29 278

原创 Redis集群的三种模式

方法

2022-09-27 17:58:33 192

原创 GROUP BY与COUNT(也可以换成其他聚合函数)用法详解

ddd

2022-09-22 12:07:46 445

原创 一致性hash是什么?有什么优势

翻到的

2022-09-22 11:42:29 115

原创 Go基础知识----defer源码和多个defer执行顺序

etrh

2022-09-08 10:47:47 1080

转载 Go基础知识----Go GC屏障技术

得到的

2022-08-10 11:09:38 118

转载 Go基础知识----CAS实现原理(同步原语的基石)

钉钉

2022-08-08 15:42:49 369

原创 REDIS 的回收策略(淘汰策略)

dd

2022-08-02 16:01:13 2483

转载 redis过期键的删除策略

钉钉

2022-08-02 15:31:57 129

原创 Mysql基础知识----union 和 union all 的区别及使用说明

传参

2022-08-01 17:02:22 171

转载 go常见问题总汇

s

2022-08-01 15:40:51 166

转载 Go基础知识----sync.Once简介(包括懒汉恶汉模式)

钉钉

2022-08-01 15:03:57 182

原创 百万级别或以上的数据如何删除

dd

2022-07-31 19:07:53 1350

原创 Mysql 中 MyISAM 和 InnoDB 的区别有哪些?

ee

2022-07-31 18:13:54 391

原创 mysql基础知识----MySQL的binlog有有几种录入格式?分别有什么区别?

ss

2022-07-31 18:05:05 305

原创 mysql基础知识----据库三大范式是什么

钉钉

2022-07-31 17:04:23 2088

原创 mysql基础知识----单表访问方法

mysql

2022-07-29 20:43:34 253

转载 go基础知识----Golang无限开启Goroutine?该如何限定Goroutine数量?

原文链接

2022-05-20 12:14:50 268

转载 go基础知识----GMP 相关问题

好文章1好文章2

2022-05-20 12:03:54 186

转载 计算机网络基础知识----HTTPS TLS/SSL双向认证和单向认证的区别

双向认证 SSL 协议要求服务器和用户双方都有证书。单向认证 SSL协议不需要客户拥有CA证书,具体的过程相对于上面的步骤,只需将服务器端验证客户证书的过程去掉,以及在协商对称密码方案,对称通话密钥时,服务器发送给客户的是没有加过密的(这并不影响SSL过程的安全性)密码方案。这样,双方具体的通讯内容,就是加过密的数据,如果有第三方攻击,获得的只是加密的数据,第三方要获得有用的信息,就需要对加密的数据进行解密,这时候的安全就依赖于密码方案的安全。而幸运的是,目前所用的密码方案,只要通讯密钥长度足够的长.

2022-05-20 09:33:25 538

空空如也

空空如也

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

TA关注的人

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