skillup

技術ブログ

PHP サーバー・ネットワーク

SQSのキュー登録とworkコマンドに関して

投稿日:2019年7月14日 更新日:

SQSでのキューの登録に関して以前やりましたが、再度扱うことがあったので、調査を。

リンク

SQSについて

Queueの登録と実際の処理に関して

キューの登録

実際の登録で以前はテストと言うこともあり、route.phpで下記の用に書きましたが、実際にこんな書き方をすることはあまりありませんね。

Controlleに下記の用に書いてJobを呼び出すことが一般的かと思われます。

app\Http\Controller\TestController.php

おそらくdispatchの内部でQueueへの登録が起こっているのだと思われます。

app/Jobs/DispatchJobs.php

あとはControllerのメソッドに直接アクセスすればOKです。

一度Job自体をUnitテストで呼び出そうとしたのですが、

なるエラーが出てしまいました。

ライブラリの依存関係か?とも思いましたが、上記の用にControllerから動かすと大丈夫だったため、何らかの引数がControllerに入っていたり、Requestに依存しているのかもしれません。

キュー登録だけではなく、一般に非同期でのタスク登録などをすることをdispatch(ディスパッチ)などと言うようです。一般的には時間差をつけて登録することも一般的なようです。

キューの監視

登録されたキューの監視です。

以前はこれだけで覚えていましたが、

リトライ数や常駐化、スリープ時間など様々な指定をしたいときには下記の用に指定することができます。

実際にはこのコマンド自体をsupervisordなのでデーモン化させる必要があるようです。

supervisorによるデーモン化

 

 

 

-PHP, サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

サーバー設定ファイルについて nginx

最近はwebサーバーのシェアとしてnginxが徐々に伸びてきていますね。 先日apacheについて解説をしましたが、nginxについて書きたいと思います。 Contents1 設定ファイル2 参考リン …

no image

Linuxでのパス

以前、composerを入れるときに、こちらの記事を書いたのですが、自分が使っているVPSではこの方法で入りませんでした。 調べるとみるとPATHが[crayon-5f2859494c92e85852 …

no image

Laravelの認証(独自テーブル仕様)

Laravelで独自の認証をしたいときに少々大変だったのでメモなどを。 *ディフォルトのテーブルはuserで認証項目もemailとpasswordと決まっています。 いじるところが色々ありまして、列挙 …

no image

laravelでのredis活用

以前下記エントリーでredisの活用について書きました。 インメモリデータベース redis 一般的な使用法ですと登録できるデータはstring,list,hashのような比較的単純な形しか登録できな …

no image

chefのインストール

以前からずっと課題になっていたchefのインストールについてです。 まだ全然わかっていませんが、なんとかvagrantからのインストールをすることができましたのでメモします。 chefでの環境構築とい …