secret

Results 8 comments of secret

我无法想法,这位技术开发人员,会如此受人喜欢,竟然还要做视频来纪念他。

占用高,不太是坏事,说明程序跑的非常快。

啥事没干,是因没事可干,时刻准备着迎接战斗,来任务了,立马就开干,如果没任务的时候就懒散,没办法第一时间进入战斗状态。

不能使用fd来关联连接,因为fd会被复用.

0长度的udp包,是指接收端不知道长度吗?

> > 0长度的udp包,是指接收端不知道长度吗? > > 字面意义的0长度,这样发给接收端,接收端echo没任何打印 sendto(fd, "", 0, 0, &addr, sizeof(addr)); 我知道你的意思了,就是发送0数据。

难道说多线程使用的相同的一个fd? 如果将监听端口重用打开,所有线程自己创建一个fd,监听可读事件,操作系统就会帮你尽可能平均分配连接,不会出现惊群现象. SO_REUSEPORT SO_REUSEPORT 是惊群最好的解决方法,Nginx 在 1.9.1 中加入了这个选项,每个 worker 进程都有自己的 socket,这些 socket 都 bind 同一个端口。当新请求到来时,内核根据四元组信息进行负载均衡,非常高效

> > 难道说多线程使用的相同的一个fd? 如果将监听端口重用打开,所有线程自己创建一个fd,监听可读事件,操作系统就会帮你尽可能平均分配连接,不会出现惊群现象. > > SO_REUSEPORT SO_REUSEPORT 是惊群最好的解决方法,Nginx 在 1.9.1 中加入了这个选项,每个 worker 进程都有自己的 socket,这些 socket 都 bind 同一个端口。当新请求到来时,内核根据四元组信息进行负载均衡,非常高效 > > 这个方法局限性太大了,Windows完全不支持,Linux也只有多进程模式支持,多线程不支持。 好的,我也对这个问题很感兴趣啊,原来多线程不支持啊.