This commit is contained in:
as2252258@163.com
2021-04-23 03:25:03 +08:00
parent 0c5e05b6a2
commit a5a607495f
11 changed files with 261 additions and 248 deletions
+4 -3
View File
@@ -27,6 +27,10 @@ class OnClose extends Callback
public function onHandler(Server $server, int $fd)
{
try {
defer(function () {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
});
$clientInfo = $server->getClientInfo($fd);
$event = Snowflake::app()->getEvent();
@@ -36,9 +40,6 @@ class OnClose extends Callback
$event->trigger($name, [$server, $fd]);
} catch (\Throwable $exception) {
$this->addError($exception, 'throwable');
} finally {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
}
}
+5 -2
View File
@@ -26,6 +26,11 @@ class OnConnect extends Callback
*/
public function onHandler(Server $server, int $fd, int $reactorId)
{
defer(function () {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
});
$event = Snowflake::app()->getEvent();
$clientInfo = $server->getClientInfo($fd);
@@ -37,8 +42,6 @@ class OnConnect extends Callback
} catch (\Throwable $throwable) {
$this->addError($throwable, 'connect');
}
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
}
+4
View File
@@ -27,6 +27,10 @@ class OnFinish extends Callback
public function onHandler(Server $server, $task_id, $data)
{
try {
defer(function () {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
});
fire(Event::TASK_FINISH, [$task_id, $data]);
} catch (\Throwable $exception) {
$this->addError($exception, 'task');
+4 -3
View File
@@ -97,14 +97,15 @@ class OnHandshake extends Callback
public function onHandler(SRequest $request, SResponse $response): void
{
try {
defer(function () {
fire(Event::SYSTEM_RESOURCE_CLEAN);
logger_insert();
});
$this->execute($request, $response);
} catch (\Throwable $exception) {
$this->addError($exception, 'throwable');
$response->status(500);
$response->end($exception->getMessage());
} finally {
fire(Event::SYSTEM_RESOURCE_CLEAN);
logger_insert();
}
}
+4 -3
View File
@@ -38,6 +38,10 @@ class OnMessage extends Callback
public function onHandler(Server $server, Frame $frame)
{
try {
defer(function () {
fire(Event::SYSTEM_RESOURCE_CLEAN);
logger_insert();
});
if ($frame->opcode === 0x08) {
return;
}
@@ -51,9 +55,6 @@ class OnMessage extends Callback
} catch (\Throwable $exception) {
$this->addError($exception, 'websocket');
$server->send($frame->fd, $exception->getMessage());
} finally {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
}
}
+1 -1
View File
@@ -36,7 +36,7 @@ class OnPacket extends Callback
{
[$host, $port] = [$clientInfo['address'], $clientInfo['port']];
try {
\Swoole\Coroutine\defer(function () {
defer(function () {
fire(Event::SYSTEM_RESOURCE_RELEASES);
\logger_insert();
});
+4 -3
View File
@@ -26,14 +26,15 @@ class OnPipeMessage extends Callback
*/
public function onHandler(Server $server, int $src_worker_id, $swollen_universalize)
{
go(function () use ($server, $src_worker_id, $swollen_universalize) {
defer(function () {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
});
match ($swollen_universalize['action'] ?? null) {
'kafka' => $this->onKafkaWorker($swollen_universalize),
'crontab' => $this->onCrontabWorker($swollen_universalize),
default => $this->onMessageWorker($server, $src_worker_id, $swollen_universalize)
};
fire(Event::SYSTEM_RESOURCE_RELEASES);
});
}
+1 -1
View File
@@ -48,7 +48,7 @@ class OnReceive extends Callback
public function onHandler(Server $server, int $fd, int $reID, string $data): mixed
{
try {
\Swoole\Coroutine\defer(function (){
defer(function (){
fire(Event::SYSTEM_RESOURCE_RELEASES);
\logger_insert();
});
+4 -3
View File
@@ -47,6 +47,10 @@ class OnRequest extends Callback
public function onHandler(Request $request, Response $response): mixed
{
try {
defer(function () {
$this->event->trigger(Event::SYSTEM_RESOURCE_RELEASES);
$this->logger->insert();
});
/** @var HRequest $request */
[$request, $response] = OnRequest::createContext($request, $response);
@@ -60,9 +64,6 @@ class OnRequest extends Callback
} catch (ExitException | Error | \Throwable $exception) {
$this->addError($exception, 'throwable');
return $this->sendErrorMessage($request, $response, $exception);
} finally {
$this->event->trigger(Event::SYSTEM_RESOURCE_RELEASES);
$this->logger->insert();
}
}
+4 -3
View File
@@ -102,6 +102,10 @@ class OnTask extends Callback
private function runTaskHandler($data): ?array
{
try {
defer(function () {
fire(Event::SYSTEM_RESOURCE_CLEAN);
logger_insert();
});
$serialize = $this->before($data);
if ($serialize === null) {
throw new Exception('unpack error.');
@@ -121,9 +125,6 @@ class OnTask extends Callback
$this->addError($exception, 'Task');
return $finish;
} finally {
fire(Event::SYSTEM_RESOURCE_RELEASES);
logger_insert();
}
}
+2 -2
View File
@@ -31,8 +31,8 @@ class OnWorkerError extends Callback
$event = Snowflake::app()->getEvent();
$event->trigger(Event::SERVER_WORKER_ERROR);
$message = sprintf('Worker#%d error stop. signal %d, exit_code %d',
$worker_id, $signal, $exit_code
$message = sprintf('Worker#%d::%d error stop. signal %d, exit_code %d',
$worker_id, $signal, $worker_pid, $exit_code
);
write($message, 'worker-exit');