0

App EngineからAWS/Beanstalkへの移行には、アップロードされたファイルを非同期で後処理するPHPサーバがあります。 App EngineのでAWSのTaskQueueと同等

、私がしなければならなかったすべてのようなものました:

(new PushTask('/workerRoute', $taskParams))->add(); 

そして非同期ワーカー操作は、ファイルがアップロードされた一回実行されていただろう。

簡単/シンプルはAWS/Beanstalkに相当しますか?

私がAWSに向かうソリューションの経路は、単純なものから遠いです。マシンが を通信するようにコードベース

  • は、管理同期権限を持ってアップロードワーカー環境に
    • を作成

      1. :私の理解の限りでは、私はする必要があります
  • 専用SQSキューを作成する
  • 上記のSQSにメッセージを送信するS3バケットルールを作成するPONファイルには、私が何とかS3のファイルパスにそれらを埋め込む必要がある、その後、労働者にそれらを抽出します、私はパラメータを制御することはできませんので
  • は、ワーカープロセスにSQSメッセージ
    • をお持ちのアップロード
  • TaskQueueのような振る舞いに向かうどんな簡素化も高く評価されます。 10倍。

    答えて

    1

    AppEngineで行ったように、スクリプトからメッセージをプッシュすることができます。http://docs.aws.amazon.com/aws-sdk-php/v2/guide/service-sqs.html$taskParamsmessageBodyです。

    +0

    ファイルをアップロードしてファイルをアップロードするときにputObject()を使用してS3に移動し、必要なすべてのパラメータを含むSQSメッセージをJSONとして配置しますペイロード。それでも、プッシュハンドラを自動的に実行する方法はありません - 私はまだその部分の作業機械を調達する必要があります。 – AVIDeveloper

    +0

    あなたの用途によります。 s3はSQSまたはLambdaにイベントを送信できます。 s3イベントが処理するのに十分な情報を持っているように感じる場合は、質問に記載されているように実行できます。別の 'アップローダー'サービスを利用することで、ファイルのアップロード時に余分なデータを使用してSQSメッセージを作成する柔軟性が向上します。 –

    +0

    申し訳ありませんが、+1 +私はWebサーバー+ワーカーよりも短いルートとあなたが改善を提供したという事実を見ていないという事実に基づいて答えを受け入れた。ありがとう。 – AVIDeveloper