自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

channel源码粗讲

2024-07-05 20:32:33 1022 2

原创 Go源码--context包

主要讲解context包

2024-06-30 19:42:26 1144

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

sync.Pool第二部分

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

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

sync.Pool第一部分

2024-06-16 19:40:46 1054

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

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

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

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

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

2024-05-24 22:10:01 957

原创 Go源码--Strconv库

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

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

原创 Go源码--Strings库

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

2024-04-20 18:47:55 790

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

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

2024-04-10 22:32:55 1607

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

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

2024-03-25 21:19:48 1323

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

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

2024-03-25 21:19:36 2040

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

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

2024-02-19 15:05:47 57

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

ff

2022-10-24 21:05:25 286 1

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

钉钉

2022-10-02 19:45:26 646

原创 redis基本对象

东方大道

2022-09-29 13:33:28 333

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

方法

2022-09-27 18:03:29 248

原创 Redis集群的三种模式

方法

2022-09-27 17:58:33 169

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

ddd

2022-09-22 12:07:46 357

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

翻到的

2022-09-22 11:42:29 87

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

etrh

2022-09-08 10:47:47 1038

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

得到的

2022-08-10 11:09:38 86

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

钉钉

2022-08-08 15:42:49 333

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

dd

2022-08-02 16:01:13 2454

转载 redis过期键的删除策略

钉钉

2022-08-02 15:31:57 98

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

传参

2022-08-01 17:02:22 152

转载 go常见问题总汇

s

2022-08-01 15:40:51 136

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

钉钉

2022-08-01 15:03:57 155

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

dd

2022-07-31 19:07:53 1221

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

ee

2022-07-31 18:13:54 356

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

ss

2022-07-31 18:05:05 273

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

钉钉

2022-07-31 17:04:23 2066

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

mysql

2022-07-29 20:43:34 219

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

原文链接

2022-05-20 12:14:50 222

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

好文章1好文章2

2022-05-20 12:03:54 155

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

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

2022-05-20 09:33:25 476

原创 mysql基础知识----redo/undo/binlog日志

数据库通常借助⽇志来实现事务,常见的有undo log、redo log,undo/redo log都能保证事务特性,undolog实现事务原⼦性,redolog实现事务的持久性。为了最⼤程度避免数据写⼊时io瓶颈带来的性能问题,MySQL采⽤了这样⼀种缓存机制:当query修改数据库内数据时,InnoDB先将该数据从磁盘读取到内存中,修改内存中的数据拷贝,并将该修改⾏为持久化到磁盘上的事务⽇志(先写redo log buffer,再定期批量写⼊),⽽不是每次都直接将修改过的数据记录到硬盘内,等事务

2022-05-18 11:49:23 2787

转载 mysql基础知识----索引失效

原文链接

2022-05-14 17:15:56 73

原创 密码学基础知识----常见的加密算法

1. 算法相关SM2为基于椭圆曲线密码的公钥密码算法标准,包含数字签名、密钥交换和公钥加密,用于替换RSA / Diffie-Hellman / ECDSA / ECDH/X509 等国际算法。(ps:非对称加密)SM3为密码哈希算法,用于替代MD5 / SHA-1 / SHA-256/ECDSA 等国际算法。(ps:哈希算法)SM4为分组密码,用于替代DES / AES等国际算法。(ps:对称加密)国密版的tls替换fabric中的tls2. 证书格式x509:一种证书的格式标准X.509结

2022-05-14 14:59:09 864

原创 计算机基础知识----三次握手

原文链接

2022-05-12 12:58:34 111

转载 区块链基础知识----共识算法

原文

2022-05-11 16:10:32 359

空空如也

空空如也

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

TA关注的人

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