2016-09-06 12 views
1

私はこれを約450msとリターン{ 'テスト':1}とり、次の試験ルーメン遅い応答

$app->get('/', function() { 
    return ['test' => 1]; 
}); 

に大きな違いを取得していたように見えます

以下

$app->get('/', function() { 
    echo json_encode['test' => 1]; 
    exit; 
}); 

これは約170msの時間がかかります。これは特に、APIに多くのリクエストがある場合に大きな違いです。

恐らく応答工場で何か重いことが起こるかもしれませんが、私はそれを見つけることができず、自分の方法で上書きする方法も見つけられませんでした。何か案は?

おかげ

更新

\ HttpFoundationその250余分なミリ秒を追加することのSymfony \コンポーネントに次の行のように見えます。なぜ今なぜか分かりません。

header('HTTP/1.0 200 OK1200'); 
+0

多分Xhprof、Blackfire.ioまたは何か別のプロファイリングを試してみませんか?興味深いケースのようです。 –

+0

ドキュメントの中で提案されているように、パフォーマンスはどうですか? https://lumen.laravel.com/docs/5.2/responses#json-responses –

+0

次のような行があります。header( 'HTTP/1.0 200 OK1200'); Symfony \ Component \ HttpFoundationで余分な250msが発生しています。だから私はそれがルーメンに関連していないと思う – keepwalking

答えて

0

それは次の行のように見える出力

header(sprintf('HTTP/%s %s %s', $this->version, $this->statusCode, $this->statusText), true, $this->statusCode); 

:ヘッダ( 'HTTP/1.0 200 OK1200を'); Symfony \ Component \ HttpFoundationで余分な250msが発生しています。だから私はその内腔に関連していないと思います