目次
回复内容:
ホームページ バックエンド開発 PHPチュートリアル javascript - php实现后台运行,运行结束后并通知前台反馈。

javascript - php实现后台运行,运行结束后并通知前台反馈。

Jun 06, 2016 pm 08:07 PM
html5 javascript node.js php shell

目前使用php执行脚本,但是在前台页面如果关闭的话,会终止脚本执行,所以希望切换到后台运行

还有一种可以在前台运行,但是提供运行进度,比如目前实时更新执行状态,比如已经执行到80%,然后到100%完成后提示完成信息。

举个列子,比如实现视频转码,目前正在转码,然后希望在后台转码,不影响前台操作。
另外一种占用前台操作,但是可以告诉前台目前还在转码,还有多少没转码。

回复内容:

目前使用php执行脚本,但是在前台页面如果关闭的话,会终止脚本执行,所以希望切换到后台运行

还有一种可以在前台运行,但是提供运行进度,比如目前实时更新执行状态,比如已经执行到80%,然后到100%完成后提示完成信息。

举个列子,比如实现视频转码,目前正在转码,然后希望在后台转码,不影响前台操作。
另外一种占用前台操作,但是可以告诉前台目前还在转码,还有多少没转码。

视频转码,耗时较长,不应该阻塞PHP-FPM进程,所以应该另开一个进程异步处理:
pclose(popen('php /path/to/task.php &', 'r'));
脚本task.php里调用Linux命令mencoder/ffmpeg/imagemagick(convert)处理多媒体文件,
并在数据库任务表里插入一条数据,用来记录任务的状态进度,供前端AJAX检查.

1、转码服务是一个进程,提供2个接口功能(a:接受转码请求并处理,b:查询转码进度)
2、前端调用这2个接口即可。

针对这两种。后台进行执行的,我所了解到的就是创建一张数据表,比如视频转码,发送邮件等,要执行对应的操作的时候向数据库插入数据,然后编写一个定时任务去后台完成相关操作

在前台执行并显示进度条,将每一次的操作当成一步,算出共多少步,涉及到的就比较多了

后台异步可以用Swoole扩展。
至于进度可以用数据库或者redis之类的进行通信,比如进度每过5%,更新一下数据库/redis, 前台则是每10秒查询一次最新状态,这样的。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

session_start()が複数回呼び出されるとどうなりますか? session_start()が複数回呼び出されるとどうなりますか? Apr 25, 2025 am 12:06 AM

session_start()への複数の呼び出しにより、警告メッセージと可能なデータ上書きが行われます。 1)PHPは警告を発し、セッションが開始されたことを促します。 2)セッションデータの予期しない上書きを引き起こす可能性があります。 3)session_status()を使用してセッションステータスを確認して、繰り返しの呼び出しを避けます。

IISとPHPの互換性:ディープダイビング IISとPHPの互換性:ディープダイビング Apr 22, 2025 am 12:01 AM

IISとPHPは互換性があり、FastCGIを通じて実装されています。 1..phpファイル要求を構成ファイルを介してFastCGIモジュールに転送します。 2. FASTCGIモジュールは、PHPプロセスを開始して、パフォーマンスと安定性を改善するための要求を処理します。 3。実際のアプリケーションでは、構成の詳細、エラーデバッグ、パフォーマンスの最適化に注意する必要があります。

H5とHTML5の接続:類似性と相違点 H5とHTML5の接続:類似性と相違点 Apr 24, 2025 am 12:01 AM

H5とHTML5は異なる概念です。HTML5は、新しい要素とAPIを含むHTMLのバージョンです。 H5は、HTML5に基づくモバイルアプリケーション開発フレームワークです。 HTML5はブラウザを介してコードを解析およびレンダリングしますが、H5アプリケーションはコンテナを実行し、JavaScriptを介してネイティブコードと対話する必要があります。

HTML5およびH5:一般的な使用法の理解 HTML5およびH5:一般的な使用法の理解 Apr 22, 2025 am 12:01 AM

HTML5とHTML5の略語であるHTML5とH5の間に違いはありません。 1.HTML5はHTMLの5番目のバージョンであり、Webページのマルチメディア関数とインタラクティブ機能を強化します。 2.H5は、HTML5ベースのモバイルWebページまたはアプリケーションを参照するためによく使用され、さまざまなモバイルデバイスに適しています。

作曲家:AIを介したPHP開発の援助 作曲家:AIを介したPHP開発の援助 Apr 29, 2025 am 12:27 AM

AIは、作曲家の使用を最適化するのに役立ちます。特定の方法には次のものが含まれます。1。依存関係管理の最適化:AIは依存関係を分析し、最適なバージョンの組み合わせを推奨し、競合を減らします。 2。自動コード生成:AIは、ベストプラクティスに準拠したComposer.jsonファイルを生成します。 3.コードの品質を改善する:AIは潜在的な問題を検出し、最適化の提案を提供し、コードの品質を向上させます。これらの方法は、開発者が効率とコードの品質を向上させるのに役立つ機械学習および自然言語処理技術を通じて実装されています。

session_start()関数の重要性は何ですか? session_start()関数の重要性は何ですか? May 03, 2025 am 12:18 AM

session_start()iscrucialinphpformangingusersions.1)itInitiateSanewsessionifnoneExists、2)resumesanexistingsession、および3)SetSessionCookieforcontinuityAcrossRequests、ApplicationslicationSliviseSlikeUserauthicationAnticatent。

HTML5:現代のウェブのビルディングブロック(H5) HTML5:現代のウェブのビルディングブロック(H5) Apr 21, 2025 am 12:05 AM

HTML5は、W3Cによって標準化されたHyperText Markup言語の最新バージョンです。 HTML5は、新しいセマンティックタグ、マルチメディアサポート、フォームの強化、Web構造の改善、ユーザーエクスペリエンス、SEO効果を導入します。 HTML5は、Webページ構造をより明確にし、SEO効果をより良くするために、、、、、、などの新しいセマンティックタグを導入します。 HTML5はマルチメディア要素をサポートしており、サードパーティのプラグインは不要で、ユーザーエクスペリエンスと読み込み速度が向上します。 HTML5はフォーム関数を強化し、ユーザーエクスペリエンスを向上させ、フォーム検証効率を向上させるなどの新しい入力タイプを導入します。

H5:HTML5の重要な改善 H5:HTML5の重要な改善 Apr 28, 2025 am 12:26 AM

HTML5は5つの重要な改善をもたらします。1。セマンティックタグにより、コードの明確性とSEO効果が向上します。 2.マルチメディアサポートは、ビデオとオーディオの埋め込みを簡素化します。 3。フォームエンハンスメントは、検証を簡素化します。 4.オフラインおよびローカルストレージにより、ユーザーエクスペリエンスが向上します。 5。キャンバスとグラフィック機能は、Webページの視覚化を強化します。

See all articles