以下の1つは、マスタースクリプトと子スクリプトがデータ共有を行う一般的な方法です。
cronジョブ-スケジュール->マスタースクリプト
HTTPリクエスト-トリガー->子スクリプト
マスタースクリプト->[データベース]<-子スクリプト
しかし、データベースの代わりに、以下のいずれかを使用してデータを共有することは可能ですか?
global
変数- システムストレージ
- セッションストレージ
- memcache /apc/これらのような他のもの
以下の1つは、マスタースクリプトと子スクリプトがデータ共有を行う一般的な方法です。
cronジョブ-スケジュール->マスタースクリプト
HTTPリクエスト-トリガー->子スクリプト
マスタースクリプト->[データベース]<-子スクリプト
しかし、データベースの代わりに、以下のいずれかを使用してデータを共有することは可能ですか?
global
変数残っている唯一の方法はfsです。DaveRandomが提案するソケット、または単純なファイルのいずれか。
データベースを使いたくないのはなぜですか?具体的に何をしようとしていますか?
もちろん、forコマンドラインにデータベースライブラリがロードされているphp-cli
と仮定すると、Webサーバーからの場合と同じようにcron-job()で実行されるスクリプトからMySQLサーバーに接続できます。php.ini
データベースを使用したくない場合は、ソケットを設定するか、一時パススルーファイルを使用できます。しかし、データベースを使用するのが最も効率的で整然とした方法です。
memcached
-はいapc
-はい。ただし、 CLIで有効にするには明示的な構成が必要です。ramfs
ファイルをメモリ内のファイルシステムに保存するために使用できます。私が何かを省略した場合は、 phpプロセス間通信を検索できます
私はファイルソリューションを2番目にしています: