swoole http サーバーは halcon、ab test を統合し、php メモリが使い果たされていると報告します
phalcon
php
swoole
在整合swoole http server和phalcon,server.php如下:
<code><?php use Phalcon\DI; use Phalcon\Loader; use Phalcon\Mvc\Router; use Phalcon\Mvc\Dispatcher; use Phalcon\Http\Response; use Phalcon\Http\Request; use Phalcon\Mvc\View; use Phalcon\Db\Adapter\Pdo\Mysql as Database; use Phalcon\Mvc\Application as BaseApplication; use Phalcon\Mvc\Model\Metadata\Memory as MemoryMetaData; use Phalcon\Mvc\Model\Manager as ModelsManager; class Application extends BaseApplication { protected function registerAutoloaders() { $loader = new Loader(); $loader->registerDirs(array( '../apps/controllers/', '../apps/models/' )); $loader->register(); } /** * This methods registers the services to be used by the application */ protected function registerServices() { $di = new DI(); //Registering a router $di->set('router', function(){ return new Router(); }); //Registering a dispatcher $di->set('dispatcher', function(){ return new Dispatcher(); }); //Registering a Http\Response $di->set('response', function(){ return new Response(); }); //Registering a Http\Request $di->set('request', function(){ return new Request(); }); //Registering the view component $di->set('view', function(){ $view = new View(); $view->setViewsDir('../apps/views/'); return $view; }); $di->set('db', function(){ return new Database(array( "host" => "localhost", "username" => "root", "password" => "", "dbname" => "invo" )); }); //Registering the Models-Metadata $di->set('modelsMetadata', function(){ return new MemoryMetaData(); }); //Registering the Models Manager $di->set('modelsManager', function(){ return new ModelsManager(); }); $this->setDI($di); } public function main() { $this->registerServices(); $this->registerAutoloaders(); } } $application = null; $http = new swoole_http_server("0.0.0.0", 9501); $http->on('request', function ($request, $response) { try { $_GET = $_POST = $_COOKIE = $_REQUEST = []; if (!empty($request->get)) { $_GET = $request->get; $_REQUEST += $_GET; } if (!empty($request->post)) { $_POST = $request->post; $_REQUEST += $_POST; } if (!empty($request->cookie)) { $_COOKIE = $request->cookie; } global $application; $html = $application->handle($request->server['request_uri'])->getContent(); $response->end($html); } catch (\Exception $e){ print_r($e); echo $e->getMessage(); } }); $http->on('WorkerStart', function($server, $workerId) { global $application; $application = new Application(); $application->main(); }); # 启动服务器 $http->start();</code>
ログイン後にコピー
浏览器访问没什么问题
做ab测试就报错了
<code>ab -n 10000 -c 1000 -rk http://phalcon.com/</code>
ログイン後にコピー
错误信息:
<code>[root@localhost public]# [2016-08-25 17:12:45 *12502.0] ERROR zm_deactivate_swoole (ERROR 103): Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 16384 bytes) in /srv/www/single/public/server.php on line 126. [2016-08-25 17:12:45 $12497.0] WARNING swManager_check_exit_status: worker#0 abnormal exit, status=255, signal=0</code>
ログイン後にコピー
请教这是什么原因导致的,是onRequest那里写的不对吗?
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最高のグラフィック設定
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
アサシンのクリードシャドウズ:シーシェルリドルソリューション
1週間前
By DDD
R.E.P.O.誰も聞こえない場合はオーディオを修正する方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
Atomfallのクレーンコントロールキーカードを見つける場所
1週間前
By DDD

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー
