随笔分类 - 网络编程
摘要:1. 高性能定时器:时间轮,时间堆 (處理超時時間,如nginx使用紅黑樹,找出最可能超時的事件)2. 高性能服务器程序框架:(nginx 使用的是基於事件模型,epoll,不阻塞,異步處理)两种高效的事件处理模式: Reactor模式 Proactor模式两种高效的并发模式:半同步/半异步模式 ...
阅读全文
摘要:創建的內核線程長期佔用cpu,一直內核認為線程soft lockup,如無法獲取自旋鎖等;因此線程可適度調用schdule(),以進行進程的調度;因為kwatchdog的執行級別低,一直得不到執行[ 8644.084020] BUG: soft lockup - CPU#0 stuck for 22...
阅读全文
摘要:多进程与多线程的服务器:1.TCP 迭代服务器程序2.TCP并发服务器程序,每个客户一个子进程3.TCP预先派生子进程服务器程序,accept无上锁保护4.TCP预先派生子进程服务器程序,accept使用文件上锁保护5.TCP预先派生子进程服务器程序,传递描述符6.TCP并发服务器程序,每个客户一个线程7.TCP预先创建线程服务器程序,每个线程各自accept8.TCP预先创建线程服务器程序,主线程统一accept
阅读全文
摘要:TCP : 面向连接(三次握手) 传输可靠 数据重发 拥塞控制 字节序列化UDP : 不面向连接,传输速度较快TCP包头结构 源端口16位 端口号是在传输层 目标端口 16位 序列号 32位 回应序号 32位 数据确认 TCP头长度 4位 reserved 6位 控制代码6位 窗口大小16位 防止溢出 偏移量16位 校验和16位 选项 32位(可选) 这样我们得出了TCP包头的最小大小.就是20字节.UDP包头结构 源端口16位 目的端口16位 长度 16位 校验和 16位 UDP的包小很多.确实如此.因为UDP是非可靠连接.设计初...
阅读全文

浙公网安备 33010602011771号