port, $server, $data); [$host, $port] = [$clientInfo['address'], $clientInfo['port']]; $router = Snowflake::app()->getRouter(); if (($node = $router->find_path($request)) === null) { return $server->sendto($host, $port, Json::encode(['state' => 404])); } $dispatch = $node->dispatch(); if (!is_string($dispatch)) $dispatch = Json::encode($dispatch); return $server->sendto($host, $port, $dispatch); } catch (\Throwable $exception) { $response = Json::encode(['state' => 500, 'message' => $exception->getMessage()]); return $server->sendto($clientInfo['address'], $clientInfo['port'], $response); } finally { fire(Event::SYSTEM_RESOURCE_RELEASES); logger()->insert(); } } }