# 以下为进程,线程的设置方法:
```
set(array $setting); // 用于设置运行时的各项参数,服务器启动后通过$serv->setting来访问Server->set方法设置的参数数组。
```
# 最大连接
```
max_conn=>10000,
//此参数用来设置Server最大允许维持多少个tcp连接,超过此数量后,新进入的连接将被拒绝。
```
## 最小值为(sert->worker_num+SwooleG.task_worker_num)*2+32
```
max_connection
//最大不得超过操作系统ulimit -n的值,否则会报一条警告信息,并重置为ulimit-n的值 ulimit -HSn 65535
```
```
max_request=>2000
//此参数表示worker进程在处理完n次请求后结束运行。manager会重新创建一个worker进程。此选项用来防止worker进程内存溢出。
```
```
reacor_num=>2
// 通过此参数来调节Reactor线程的数量进行内存溢出。
```
# reactor线程数
```
reactor_num=>2
//通过此参数来调节Teactor线程数量,以充分利用多核
```
# worker进程数
```
worker_num =>4
//设置启动的Worker进程数量。
```
```
task_worker_num=>6
//配置Task进程数量,配置此参数后将会启动Task功能,所以Server务必要注册onTask onFinish 2个事件回调函数,如果没有注册,服务器程序将无法启动
```
# 代码案例:
~~~
<?php
// 实例化一个tcp出来
$server =new Swoole\Server('0.0.0.0',8887,SWOOLE_PROCESS,SWOOLE_SOCK_TCP);
$setting=[
'worker_num'=>4 , // worker进程数
'reactor_num'=>3, //reactor线程数
'task_worker_num'=>2,
];
$server->set($setting);
//回调函数必须设置
$server->on('receive',function (){});
//task 进程必须设置接受函数
$server->on('Task',function(){});
//task 进程必须设置接受函数
$server->on('Finish',function(){});
$server->start();
~~~
# 守护进程化
```
daemonize => 1
//加入此参数后,执行php server.php将转入后台作为守护进程运行
```