Open1

Celeryメモ

biwa_biwabiwa_biwa

rabbitmq

celeryの前に、そもそmessage-brokerをさわったことがなかったので、
ここではrabbitmqを使って基本的な動作を試してみる。
まずはrabbitmqのtutorialのpython版をやってみる。

hello world

rabbitmqの起動

まずはdockerで起動する。

docker compose up -d

以下はdocker-compose.yml

services:
  rabbitmq:
    image: rabbitmq:3.11.7-management
    container_name: rabbitmq_django
    ports:
      - 5672:5672
      - 15672:15672
    # ユーザ名/パスワードの設定
    # 特に設定しない場合、guest/guestが暗黙的に設定される
    environment:
      - RABBITMQ_DEFAULT_USER=user
      - RABBITMQ_DEFAULT_PASS=password
    # データの永続化
    volumes:
      - celery_dj:/var/lib/rabbitmq
volumes:
    celery_dj:

sender.py

tutorialのままだと認証部分が書かれてないのでうごかなかった。usernameとpassword
を指定してconnectionParametersに追加してやる。

import pika
CREDENTIALS = pika.PlainCredentials('user', 'password')

connection = pika.BlockingConnection(
    pika.ConnectionParameters(host='localhost',credentials=CREDENTIALS))
channel = connection.channel()