Toggle navigation
码云博客
首页
Devops
PHP
Golang
数据库
Docker
K8s
Ai
杂项
Home
URL输入到页面加载的全过程分析
小码哥
2024-08-31 17:23:37
Devops
tcp
HTTP
URL输入到页面加载的全过程分析当用户在浏览器中输入一个URL并按下回车键后,背后发生了一系列复杂的过程,最终呈现出用户想要的网页。总体来说,这一过程可以分为以下几个主要步骤:1. DNS解析2. TCP连接3. 发送HTTP请求4. 服务器处理请求并返回HTTP响应5. 浏览器解析渲染页面6. 连接结束 1. DNS解析DNS解析是将
阅读全文
Go语言之Context详解
小码哥
2024-08-25 16:00:23
Golang
context
golang
1. 基本概念 1.1 什么是 Context上下文 `context.Context` 在 Go 语言中用来设置截止日期、同步信号,传递请求相关值的结构体。上下文与 Goroutine 有比较密切的关系,是 Go 语言中独特的设计,在其他编程语言中我们很少见到类似的概念。主要用于超时控制和多Goroutine间的数据传递。注:这里的数据传递主要指全局数据,如 链
阅读全文
WaitGroup底层原理
小码哥
2024-08-18 17:04:57
Golang
WaitGroup
golang
WaitGroup核心组件`WaitGroup` 结构体内部主要包含以下两个核心部分(在较新的 Go 版本中,实现有所优化,但基本思想一致):1. `counter` (计数器):这是一个整数,用来记录需要等待的 goroutine 的数量。 当我们调用 `Add(n)` 方法时,这个计数器会增加 `n`。 当我们调用 `Done()`
阅读全文
MySQL数据库事务和ACID特性
小码哥
2024-08-17 17:23:17
数据库
Singleflight
golang
MySQL数据库事务和ACID特性 1. 概述本文将深入探讨数据库事务和ACID(原子性、一致性、隔离性、持久性)特性,并详细解释MySQL是如何实现这些特性的。结论: 一致性(Consistency)是最终目标; 原子性(Atomicity)、隔离性(Isolation)、持久性(Durability)是实现一致性的手段。MySQL通过以下方式实现ACI
阅读全文
Go语言之防缓存击穿利器 Singleflight
小码哥
2024-08-11 17:33:26
Golang
ACID
事务
mysql
Go语言之防缓存击穿利器 Singleflight 1. 缓存击穿在日常开发中,为了提升性能和减轻数据库的压力,通常会对热点数据进行缓存。例如,使用 Redis 缓存用户请求的数据,如果缓存中有数据则直接返回,否则查询数据库并将结果写入缓存。但是,如果缓存失效了,在查询数据库和将数据再次写入缓存的过程中,其他请求也会出现缓存未命中的情况,导致大量请求直接打到数据库,给数据
阅读全文
Golang sync.Mutex源码解析
小码哥
2024-08-11 17:16:19
Golang
锁
mutex
golang
Golang sync.Mutex源码解析Go 语言在 `sync` 包中提供了用于同步的一些基本原语,`sync.Mutex` 就是其中最常用的一个。 1. 基本结构Go 语言的 `sync.Mutex` 由两个字段 `state` 和 `sema` 组成。其中 `state` 表示当前互斥锁的状态,而 `sema` 是用于控制锁状态的信号量。```go//
阅读全文
Golang Channel源码解析
小码哥
2024-08-10 17:06:27
Golang
并发
channel
golang
Golang Channel源码解析 1. 概述Golang官方对 `chan` 的描述如下: A channel provides a mechanism for concurrently executing functions to communicate by sending and receiving values of a specified element t
阅读全文
Golang中的Map数据结构
小码哥
2024-08-03 16:48:55
Golang
golang
Golang中的Map数据结构在Go语言中,`map`是一种非常强大的数据结构,它提供了键值对的存储和快速查找功能。本文将详细介绍Go语言中`map`的数据结构、实现原理和常见操作。 一、Map的数据结构Go语言中的`map`数据结构由`runtime/map.go`中的`hmap`定义:```gotype hmap struct { count
阅读全文
详解TCP、UDP和HTTP
小码哥
2024-07-28 16:19:27
杂项
tcp
HTTP
udp
详解TCP、UDP和HTTP在计算机网络中,TCP(传输控制协议)、UDP(用户数据报协议)和HTTP(超文本传输协议)是三种重要的协议。它们分别在不同的层次和场景中发挥着重要作用。本文将详细介绍这三种协议的工作原理、特点及其应用场景。 一、TCP(传输控制协议) 1.1 概述TCP(Transmission Control Protocol)是一种面向连接的、可
阅读全文
HTTP的三次握手和四次挥手
小码哥
2024-07-20 16:00:14
杂项
HTTP
HTTP的三次握手和四次挥手在计算机网络中,TCP(传输控制协议)是一个至关重要的协议。为了确保数据的可靠传输,TCP采用了“三次握手”机制来建立连接,用“四次挥手”机制来断开连接。本文将详细介绍这两种机制的工作原理。 一、TCP三次握手TCP的三次握手(ThreeWay Handshake)是客户端和服务器在传输数据前建立连接的过程。其主要目的是确保双方都有能力发送和接
阅读全文
上一页
1
2
3
4
5
6
7
8
9
下一页
热门标签
laravel (3)
Opentracing (3)
链路追踪 (2)
Jaeger (2)
golang (21)
helm (3)
CRI (1)
kubesphere (1)
k8s (9)
slices (1)
Ticker (1)
Timer (1)
mysql (9)
pattern (2)
golang迭代器 (1)
docker (3)
向量化 (1)
factory (4)
设计模式 (6)
kafka (1)
sync.Once (1)
docker-compose (1)
消息中间件 (2)
sync (3)
pool (1)
池 (1)
queue (1)
gc (1)
垃圾回收 (1)
cond (1)
test (1)
heap (1)
内存逃逸 (1)
算法 (1)
事务 (1)
Singleflight (1)
context (1)
Nginx (1)
mutex (1)
锁 (1)
ACID (1)
php (1)
udp (1)
channel (2)
并发 (1)
es (2)
HTTP (3)
tcp (2)
redis (2)
llm (1)
isito (1)
服务网格 (1)
linux (1)
云原生 (5)
rag (2)
ssh (1)
容器 (4)
devops (3)
gorm (4)
database (2)
gitlab (1)
ai (7)
chatgpt (1)
sd (1)
DB (1)
mcp (3)
量化 (1)
蒸馏 (1)
内存对齐 (1)
MySQL双写策略 (1)
值传递 (1)
uintptr (1)
WaitGroup (1)
agent (1)
map (1)
n8n (1)
置顶推荐
最新评论
友情链接
更多
×
无需注册,用以下帐号即可直接登录。
需要先增加第三方登录配置。
点击前往
最新评论