摘要:
go语言中使用接口,以及对接口的理解 接口的简单介绍 在任一编程语言中,接口 - 方法或行为的集合,在功能和该功能的使用者之间构建了一层薄薄的抽象层。在使用接口时,并不需要了解底层函数是如何实现的,因为接口隔离了各个部分(划重点)。 跟不使用接口相比,使用接口的最大好处就是可以使代码变得简洁。例如, 阅读全文
摘要:
Go设计模式 - 单例模式 实现代码 /* 单例模式 使用懒惰模式的单例模式,使用双重检查加锁保证线程安全 */ package _3_singleton import "sync" //Singleton 是单例模式接口,导出的 //通过该接口可以避免 GetInstance 返回一个包私有类型的 阅读全文
摘要:
服务端代码 //server code package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" ) type User struct { Name string `json:"name"` Password string 阅读全文
摘要:
问题1:网络收发过程中缓冲区的位置 网卡收发网络包时,通过DMA方式交互的环形缓冲区 网卡中断处理程序为网络帧分配的,内核数据结构sk_buff缓冲区 网卡中断处理程序为网络帧分配的,内核数据结构sk_buff缓冲区 首先,这些缓冲区的位置在哪儿? 是在网卡硬件中,还是在内存中? 这个问题其实仔细想 阅读全文
摘要:
网络性能优化 传输层 传输层最重要的是TCP和UDP协议,所以这儿的优化,其实主要就是对这两种协议的优化 TCP协议的优化 TCP提供了面向连接的可靠传输服务 要优化TCP首先要掌握TCP协议的基本原理 比如流量控制、慢启动、拥塞避免、延迟确认以及状态流图(如下图所示)等 分几类情况详细说明 第一类 阅读全文