![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 60
马兰花呀
有一种美叫不怒而威!
展开
-
利用多进程/多线程实现多个客户端同时访问同一服务器
如果实现一客户端与服务器的交互比较容易(直接用TCP的编程流程就可以实现,只是这样写出的程序只能是一个客户端交互释放连接后其他客户端才可以与服务器交互 ),但是要实现多个客户端同时与同一服务器的交互就相对复杂一点。 我们先给出服务器处理同一客户端的多次访问的伪代码: &nb...转载 2021-04-07 13:15:10 · 2173 阅读 · 0 评论 -
什么是TCP粘包?怎么解决这个问题
在socket网络编程中,都是端到端通信,由客户端端口+服务端端口+客户端IP+服务端IP+传输协议组成的五元组可以明确的标识一条连接。在TCP的socket编程中,发送端和接收端都有成对的socket。发送端为了将多个发往接收端的包,更加高效的的发给接收端,于是采用了优化算法(Nagle算法),将多次间隔较小、数据量较小的数据,合并成一个数据量大的数据块,然后进行封包。那么这样一来,接收端就必须使用高效科学的拆包...转载 2021-03-19 19:06:54 · 404 阅读 · 0 评论 -
linux下的线程池和进程池以及线程池的实现
池 由于服务器的硬件资源“充裕”,那么提高服务器性能的一个很直接的方法就是以空间换时间,即“浪费”服务器的硬件资源,以换取其运行效率。这就是池的概念。 池是一组资源的集合,这组资源在服务器启动之初就被创建并初始化,这称为静态资源分配。 当服务器进入正式运行阶段,即开始处理客户请...转载 2021-03-10 17:30:08 · 212 阅读 · 0 评论 -
TCP的拥塞控制
在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏,这种情况就叫做网络拥塞。 在计算机网络中数位链路容量(即带宽)、交换结点中的缓存和处理机等,都是网络的资源。 若出现拥塞而不进行控制,整个网络的吞吐量将随输入负荷的增大而下降。 当输入的负载到...转载 2021-03-10 09:26:23 · 180 阅读 · 0 评论 -
TCP与UDP的区别(超详细)
总结 TCP是面向连接的,UDP是无连接的TCP是可靠的,UDP是不可靠的TCP是面向字节流的,UDP是面向数据报文的TCP只支持点对点通信,UDP支持一对一,一对多,多对多TCP报文首部20个字节,UDP首部8个字节TCP有拥塞控制机制,UDP没有TCP协议下双方发送接受缓冲区都...转载 2021-03-10 08:45:08 · 3444 阅读 · 0 评论 -
多线程与线程池的区别
线程池的概念 线程池大类总共分为4种 fixThreadPool 正规线程(传统线程池)cacheThreadPool 缓存线程池singleThreadPoll 单线程线程池(单例线程池)ScheduledThreadPoll 周期性执行任务的线程池 fixThreadPool 正规线程(传统线程池) 含有核心线程,核心线程...转载 2021-03-10 08:18:52 · 348 阅读 · 0 评论