Golang教程

推荐一个强大的Go语言工具函数库

从 PHP 转到 Go 的朋友,常常会因为没有便捷的工具函数而感到苦恼。PHP 写的多了就会形成路径依赖,在写 Go 的时候时不时就会想到 PHP 强大的数组函数。当然写 Go 的 PHPer 也想拥...
Golang教程

go 高并发 TCP 网络编程

什么是非阻塞 I/O 下图是四层网络分层,其中数据链路层和网络层都是不可靠的,到了传输层就是可靠的了,机器和机器才能进行可靠的传输,RESP 协议是属于应用层的 TCP 通信过程也就是通过三次握手建立...
Golang教程

深入理解go map

什么是 map 维基百科里这样定义 map: In computer science, an associative array, map, symbol table, or dictionary i...
Golang教程

Node、Python、Go中的websocket

在之前的文章中,我们已经多次探讨了WebSocket的各种实现和应用,尤其是使用Node.js生态系统来演示。然而,为了让大家更全面地了解不同编程语言在实现WebSocket服务器时的特点和优势,今天...
Golang教程

Go 高并发下的锁

锁的基础 go 的锁是建立在两个基础之上:atomic 和信号锁 sema atomic atomic 是原子操作,比如对一个 int32 类型的变量加 1,就可以使用 atomic.AddInt32...
Golang教程

go 手写框架-1 路由组织

前言 这可以算是一个非主流的框架,但其实它更接近于一个实践项目,而非高度封装的框架。它不像通常框架那样拥有繁多的接口和复杂的封装,而是将所有功能直接体现在代码中,使得开发者能够一目了然地理解其意义,并...
Golang教程

Golang 协程 VS Java线程

在现代编程语言中,协程(goroutine)和线程(thread)是两种常见的并发处理机制。它们分别在 Golang 和 Java 中扮演着重要角色。本文将深入探讨 Golang 的协程和 Java ...