swoole_server->set
swoole_server->set������������swoole_server����ʱ�ĸ�����������������ͨ��$serv->setting������set�������õIJ������顣
ԭ�ͣ�
void swoole_server->set(array $setting); void swoole_server_set(swoole_server $server, array $setting);
ʾ����
$serv->set(array( 'timeout' => 2.5, //select and epoll_wait timeout. 'poll_thread_num' => 2, //reactor thread num 'writer_num' => 2, //writer thread num 'worker_num' => 4, //worker process num 'backlog' => 128, //listen backlog 'max_request' => 50, 'dispatch_mode'=>1, ));
swoole_server::setֻ����swoole_server::startǰ����
�������
max_conn => 10000, �˲�����������Server�������ά�ֶ��ٸ�tcp���ӡ��������������½�������ӽ����ܾ���
�˲�����Ҫ�����Ĺ����ݻ����ڴ��ʵ����������á�Swoole����ݴ���ֵһ���Է���һ����ڴ�������Connection��Ϣ
�ػ����̻�
daemonize => 1������˲�����ִ��php server.php��ת���̨��Ϊ�ػ���������
reactor�߳���
reactor_num => 2��ͨ���˲���������poll�̵߳��������Գ�����ö��
reactor_num��writer_numĬ������ΪCPU����
1.6.9֮ǰ�汾��ʹ�� poll_thread_num => 2������
Writer�߳���
writer_num => 2��ͨ���˲���������Write�̵߳��������Գ�����ö�ˡ���Swoole���SOCKET�Ķ�д�Ƿֿ��ģ�IO_Read��reactor�߳�����ɣ�IO_Write��writer�߳������
1.6.12+������Writer�̣߳���Reactor�߳����˺ϲ�
worker������
worker_num => 4���������worker����������swoole���ù̶�worker���̵�ģʽ��
PHP��������ȫ�첽��������worker_num����ΪCPU������1-4�����ɡ������ͬ��������worker_num����Ϊ100���߸��ߣ�����Ҫ��ÿ��������ĺ�ʱ�Ͳ���ϵͳ����״����
���趨��worker������С��reactor�߳���ʱ�����Զ�����reactor�̵߳�����
max_request
max_request => 2000���˲�����ʾworker�����ڴ�����n�������������С�manager�����´���һ��worker���̡���ѡ��������ֹworker�����ڴ������
PHP����Ҳ����ʹ��memory_get_usage�������̵��ڴ�ռ����������ֽӽ�memory_limitʱ������exit()�˳����̡�manager���̻���մ˽��̣�Ȼ��������һ���µ�Worker���̡�
onConnect/onClose�����Ӽ���
max_request => 0
����Ϊ0��ʾ���Զ�������Worker��������Ҫ����������Ϣ�ķ�����Ҫ����Ϊ0.
Listen�����
backlog => 128���˲������������ͬʱ�ж��ٸ���accept�����ӣ�swoole����acceptЧ���Ǻܸߵģ������ϲ�����ִ����Ŷ������
CPU������
open_cpu_affinity => 1 ,����CPU������
TCP_NoDelay����
open_tcp_nodelay => 1 ,����tcp_nodelay
TCP_DEFER_ACCEPT
tcp_defer_accept => 5���˲����趨һ�����������ͻ����������ӵ�������ʱ����Լ�������ڲ����ᴥ��accept��ֱ�������ݷ��ͣ����߳�ʱʱ�Żᴥ����
��־�ļ�·��
log_file => '/data/log/swoole.log', ָ��swoole������־�ļ�����swoole�����ڷ������쳣��Ϣ���¼������ļ��С�Ĭ�ϻ��ӡ����Ļ��
�����ý���swoole-1.5.8���ϰ汾�п���
����buffer
buffer��Ҫ�����ڼ�������Ƿ����������������swoole������ȴ��µ����ݵ�����ֱ���յ�������һ�����Ż�һ���Է���worker���̡���ʱonReceive���յ�һ������SW_BUFFER_SIZE��
С��$serv->setting['package_max_length']�����ݡ�
Ŀǰ���ṩ��EOF��⡢�̶���ͷ���ȼ��2��bufferģʽ��
open_eof_check => true��buffer
package_eof =>
"\r\n\r\n" ����EOF
����������
heartbeat_check_interval => 30
//ÿ���������һ�Σ���λ�룬Swoole����ѯ����TCP���ӣ�����������ʱ������ӹرյ�
heartbeat_idle_time => 60 //TCP���ӵ��������ʱ�䣬��λs ,
���ijfd���һ�η����������ڵ�ʱ�䳬��heartbeat_idle_time���������ӹرա�
�������������Ҫswoole-1.6.10+
heartbeat_idle_time������ڻ����heartbeat_check_interval
worker�������ݰ�����ģʽ
dispatch_mode = 1 //1ƽ�����䣬2��FDȡ���̶����䣬3��ռʽ���䣬Ĭ��Ϊȡ��(dispatch=2)
��ռʽ���䣬ÿ�ζ��ǿ��е�worker���̻�����ݡ��ܺ���SOA/RPC����ڲ�������
��ѡ��Ϊdispatch=3��ռģʽʱ��worker�����ڷ���onConnect/onReceive/onClose/onTimer�Ὣworker���̱��Ϊæ�����ٽ����µ�����reactor�Ὣ������Ͷ�ݸ�����״̬Ϊ�е�worker����
���ϣ��ÿ�����ӵ����ݷ�����̶���worker���̣�dispatch_mode��Ҫ����Ϊ2