我打开几个bash登录客户端向服务器发送tcp请求,服务器为什么接受到线程id都是0

来源:4-1 Swoole--TCP服务器

qq_大寒_2

2018-03-22

老师,我打开几个bash登录客户端向服务器发送tcp请求,服务器为什么接受到线程id都是0?

,这个没太理解。

写回答

3回答

singwa

2018-03-23

您代码贴下。

0
4
qq_大寒_2
装的是虚拟机,本地的
2018-03-23
共4条回复

zk3480124

2018-03-31

  • (这是老师在下一个章节中写的,这章没有答案,我复制粘贴一下)

  • Reactor线程数,reactor_num => 2,通过此参数来调节主进程内事件处理线程的数量,以充分利用多核。默认会启用CPU核数相同的数量reactor_num一般设置为CPU核数的1-4倍,在swoole中reactor_num最大不得超过CPU核数*4。swoole的Reactor线程是可以利用多核,如:机器有128核,那么底层会启动128线程。每个线程能都会维持一个EventLoop。线程之间是无锁的,指令可以被128核CPU并行执行。考虑到操作系统调度存在一定程度的性能损失,可以设置为CPU核数*2,以便最大化利用CPU的每一个核。


通过如下命令查看CPU核数

[root@VM_48_141_centos work]# cat /proc/cpuinfo|grep "cores"|uniq

cpu cores : 1

因为是1核的,所以在set中设置reactor_num

$serv->set([
   'reactor_num'=>4,
  'worker_num'=>8,
   'max_request'=>10000
]);


1
0

qq_大寒_2

提问者

2018-03-23

//img.mukewang.com/szimg/5ab4d93800016f7309070229.jpg


//img.mukewang.com/szimg/5ab4d940000171bc06070141.jpg


//img.mukewang.com/szimg/5ab4d96800011c5c05630084.jpg


我又开了一个bash链接tcp服务,


//img.mukewang.com/szimg/5ab4d9d00001509f06770580.jpg

0
0

Swoole入门到实战打造高性能赛事直播平台

swoole创始人推荐,借助Swoole打造高性能直播平台

2228 学习 · 1062 问题

查看课程