私の目標は、サーバーの応答がレンダリングされる前にユーザーが待たないように、バックグラウンドで時間のかかる機能を起動することです。
コントローラーから非同期プロセスを起動する Symfony プロジェクトがあります。このプロセスは、別のコントローラーを呼び出す Symfony コマンドを起動します。
問題は、プロセスを呼び出しているときですstart()
$process = new Process('/usr/bin/php '.$this->get('kernel')->getRootDir().'/console scopusftpupload ' . escapeshellcmd($params));
$process->start();
その後、プロセスでは何も起こりませんが、リダイレクトと後で実行した他のコードは機能します。
しかし、もしそうなら
$process->run();
その後、プロセスは正常に機能しますが、ビューをレンダリングするにはプロセスが終了するまで待つ必要があります。
私が間違っていることは何ですか?