加载中
go-zero 如何使用gorm

直接搜哈代码 1. 重写servicectx type ServiceContext struct { Config config.Config UserDb *DbSplit } var SmsObj utils.ISms var DefaultRedis *redis.Client func NewServiceContext(c ...

2023/03/15 21:24
205
go select 原理

概述 go 的 select 语句是专门为了 channel 发送和接收消息而诞生的语句, 在语句的运行期间, 该 goroutine 是阻塞的. DEMO func main() { ch1 := make(chan int, 1) ch2 := make(chan int, 1...

2023/02/01 14:21
100
linux专题--namespace

namespace 的概念 namespace 是 Linux 内核用来隔离内核资源的方式。通过 namespace 可以让一些进程只能看到与自己相关的一部分资源,而另外一些进程也只能看到与它们自己相关的资源,这两拨...

2022/02/10 17:05
194
死锁

什么是死锁 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死...

go
2021/10/25 21:01
77
分布式问题系列--惊群

惊群 怎么理解 当你往一群鸽子中间扔一块食物,虽然最终只有一个鸽子抢到食物,但所有鸽子都会被惊动来争夺,没有抢到食物的鸽子只好回去继续睡觉, 等待下一块食物到来。这样,每扔一块食物...

linux内核ksoftirqd线程分析

系统现象 我们执行ps会发现一个叫ksoftirqd的线程 ps -ef | grep ksoftirqd root 6 2 0 8月19 ? 00:01:15 [ksoftirqd/0] root 14 2 0 8月19 ? 00:01:13 [ksoftirqd/1] roo......

2021/10/13 16:47
2.4K
golang从内核到epoll

引子:在之前的文章里 golang netpoll的实现与分析 讲了一些,对于golang netpoll的实现,但是,数据是怎么通过硬件到达golang的这块不是太明确,今天就主要分析下这一块。 linux的网络的基本...

2021/10/11 17:56
2.3W
记一些go slice的坑

坑1,赋值 s1 = []int{1,2,3,4,5} s2 := s1 s2 = append(s2, 1) //s1[5]是什么? 由于切片是引用类型,首地址都一样,因此对当切片没有被扩容的时候,会影响之前的对象。如果扩容了,就不会影...

go
2021/09/22 18:33
256
golang netpoll封装详解

io模型 计算机的io模型区分为多种,目前用的最多的也就是nio、epoll、select。 结合不同场景使用不同的io模型才是正解。 具体可以查看我之前写的io模型演进。io模型演进 golang中网络io gola...

2021/09/22 15:46
6.8K
现在面试都这么直接的嘛?(golang 切片)

现在面试都这么直接的嘛? 面试难如狗,肝不过年轻人怎么办,只能多总结。 slice 那么切片,就是今天的主角了。 直接搜哈。 问题1,slice的底层数据结构 我擦,这么直接的嘛? 我猜是数组加链...

2021/04/20 17:50
324
协程究竟比线程能省多少开销?

Linux进程和线程的上下文切换开销,大约是3-5us之间。这个开销确实不算大,但是海量互联网服务端和一般的计算机程序相比,特点是: 高并发:每秒钟需要处理成千上万的用户请求 周期短:每个用...

2021/04/20 10:02
1.8K

没有更多内容

加载失败,请刷新页面

返回顶部
顶部