1.8.0
�ͻ���
- ����ԭ���첽MySQL�ͻ���
- ����ԭ���첽Redis�ͻ��ˣ�����Redis�ٷ��ṩ��hiredis��
- ����ԭ���첽Http�ͻ���
- ����ԭ���첽WebSocket�ͻ���֧��
- �ع��ײ�swClient���첽TCP�ͻ���ʵ�ַŵ�swoole�ں���
- ����
swoole_client->reuse
���ԣ�SWOOLE_KEEP
������ģʽ�±�ʶ�Ƿ�Ϊ���õ�����
��������
- �ع�websocket���������룬�ײ���
length_check
Э�鸴����ͬ�Ĵ���������ǿ�ȶ��� - ����
Task
���̶�tick/after
��ʱ����֧�֣��ײ���ڸ߾��ȵ�setitimer
+�ź�ʵ�� - ���湹�캯���д����host��port������
swoole_server
�������� - ���Ӷ�˿ڶ�Э���֧�֣���Ҫ���£�
- ����
swoole_server->defer
����������ʱִ��һЩ���� - ����
swoole_server->close
ǿ���ж����ӵ�ѡ����õڶ���������true����շ��Ͷ��в������ж�����
��˿ڶ�Э��ʾ����
$serv = new swoole_server("0.0.0.0", 9501); $port2 = $serv->listen('127.0.0.1', 9502, SWOOLE_SOCK_TCP); $port2->set(array( 'open_length_check' => true, 'package_length_type' => 'N', 'package_length_offset' => 0, //��N���ֽ��ǰ����ȵ�ֵ 'package_body_offset' => 4, //�ڼ����ֽڿ�ʼ���㳤�� 'package_max_length' => 2000000, //Э����� )); $port2->on('receive', function (swoole_server $serv, $fd, $from_id, $data) { echo "ServerPort2\n"; }); $serv->on('connect', function ($serv, $fd, $from_id){ echo "[#".posix_getpid()."]\tClient@[$fd:$from_id]: Connect.\n"; }); $serv->on('receive', function (swoole_server $serv, $fd, $from_id, $data) { echo "[#".$serv->worker_id."]\tClient[$fd]: $data\n"; if ($serv->send($fd, "hello\n") == false) { echo "error\n"; } }); $serv->on('close', function ($serv, $fd, $from_id) { echo "[#".posix_getpid()."]\tClient@[$fd:$from_id]: Close.\n"; }); $serv->start();
����
- ����swoole_table��keyֵ�Ĵ洢��
foreach
����tableʱ���Ի�ȡ��keyֵ - ����swoole_table��key�Ա�ģʽ����crc32�ȶԸ�Ϊֱ�ӽ����ַ����Ա�
- ����utlist.h�
1.9.9
�汾
swoole_table����Keyֵ�������ڴ�ռ�ã���table��sizeΪ100��KEYֵ�洢������64M�ڴ�ռ��
������
- ��������Ϣ���к���double-free����
- �ع���ʱ������
after
��tick
��ʱ��żȻ���ֵ�core dump
������ - ��ʱ��ʹ����С�����ݽṹ������/ɾ��ʱ�临�Ӷ�Ϊ
log(N)
- ��
swoole_process::signal
��PHP7�·���core dump
������ - ��
swoole_async_write
��PHP7�·���core dump
������
�Ƴ�����
- �Ƴ�δ֧�ֵ����������ʷ������룬��
heartbeat_ping
��dispatch_key_type
�� - �Ƴ�
swoole_server->addtimer
��swoole_server->deltimer
��swoole_server->gettimer
- �Ƴ�
swoole_timer_add
��swoole_timer_del
- �Ƴ�
swoole_server
��onTimer
�¼� - �Ƴ�
task_worker_max
���ü�������Դ��� - �Ƴ�
swoole_server->handler
����