セロリワーカーが24時間アイドル状態のままでデータベース接続エラーが発生しました

ベスト

いくつかの注文を処理するためにKafkaを使用しているdjangoベースのWebアプリケーションがあります。現在、Celery Workersを使用して、Kafkaコンシューマーを各トピックに割り当てています。各Kafkaコンシューマーは、Kafkaタスクの形式でKafkaトピックに割り当てられます。ただし、1日ほど経った後、タスクを送信すると、次のエラーが発生します。

    _mysql.connection.query(self, query)
_mysql_exceptions.OperationalError: (2006, 'MySQL server has gone away')

The above exception was the direct cause of the following exception:

以下は私のtasks.pyファイルがどのように見えるかです:

@shared_task
def init_kafka_consumer(topic):
    try:
        if topic is None:
            raise Exception("Topic is none, unable to initialize kafka consumer")
        logger.info("Spawning new task to subscribe to topic")
        params = []
        params.append(topic)
        background_thread = Thread(target=sunscribe_consumer, args=params)
        background_thread.start()
    except Exception :
        logger.exception("An exception occurred while reading message from kafka")

def sunscribe_consumer(topic) :
    try:
        if topic is None:
            raise Exception("Topic is none, unable to initialize kafka consumer")
        conf = {'bootstrap.servers': "localhost:9092", 'group.id': 'test', 'session.timeout.ms': 6000,
                'auto.offset.reset': 'earliest'}
        c = Consumer(conf)
        logger.info("Subscribing consumer to topic "+str(topic[0]))
        c.subscribe(topic)
        # Read messages from Kafka
        try:
            while True:
                msg = c.poll(timeout=1.0)
                if msg is None:
                    continue
                if msg.error():
                    raise KafkaException(msg.error())
                else:
                    try:
                        objs = serializers.deserialize("json", msg.value())
                        for obj in objs:
                            order = obj.object
                            order = BuyOrder.objects.get(id=order.id) #Getting an error while accessing DB
                            if order.is_pushed_to_kafka :
                                return
                            order.is_pushed_to_kafka = True
                            order.save()
                            from web3 import HTTPProvider, Web3, exceptions
                            w3 = Web3(HTTPProvider(INFURA_MAIN_NET_ETH_URL))
                            processBuyerPayout(order,w3)
                    except Exception :
                        logger.exception("An exception occurred while de-serializing message")
        except Exception :
            logger.exception("An exception occurred while reading message from kafka")
        finally:
            c.close()
    except Exception :
        logger.exception("An exception occurred while reading message from kafka")

タスクを受信するとすぐにデータベース接続が存在するかどうかを確認でき、存在しない場合は接続を再確立できますか?

パッケージ

https://github.com/celery/django-celery-results/issues/58#issuecomment-418413369と上記のコメントによると、このコードを入力します。

from django.db import close_old_connections
close_old_connections()

古い接続を閉じて、タスク内で新しい接続を開くと役立つはずです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

SpringBootアプリケーションからローカルMySQLデータベースへの接続中にエラーが発生しました

分類Dev

ローカルデータベースサーバーへの接続中にエラーが発生しました

分類Dev

データベースとの接続時に奇妙なエラーが発生しました

分類Dev

ノードjsアプリを介してopenshiftでmysqlデータベースに接続中にエラーが発生しました

分類Dev

Java Webアプリケーションをmysqlデータベースに接続したいのですが、エラーが発生します

分類Dev

Firebirdデータベースファイルのアップロード時にエラーが発生しました

分類Dev

リモートherokupostgresqlデータベースへの接続でエラーが発生します

分類Dev

データベース(JAVA)への接続中にSQL構文でエラーが発生しました

分類Dev

インターネットに接続していないときにローカルWAMPで「データベース接続の確立中にエラーが発生しました」

分類Dev

エミュレーターでアプリを実行できません-デバイス「goldfish_pipe」のインスタンス0x0の状態をロード中にエラーが発生しました

分類Dev

ネットワーク状態へのアクセス中にエラーが発生しました

分類Dev

MINSTデータベースのダウンロード時にエラーが発生しました

分類Dev

リクエスト時にLoopbackJSとPostgreSQL間の接続でエラーが発生しました

分類Dev

PHPでMySQLデータベースに接続しようとしてエラーが発生しました

分類Dev

新しく復元されたMDFデータベースへの接続中にアクセス拒否エラーが発生しました

分類Dev

JoomlaのPGSQLデータベースへの接続中にエラーが発生しました

分類Dev

データベース接続の確立中にエラーが発生しました-14.04のUbuntuWordPress

分類Dev

データベースの接続エラータイプ:2002:アクセスが拒否されました

分類Dev

Cloudflareでデータベース接続を確立するときにエラーが発生しました

分類Dev

あるアプリを別のアプリのデータベースに接続するときにエラーが発生しました

分類Dev

DjangoをGoogleAppEngineのGoogleCloudSQLPostgresデータベースに接続中にエラーが発生しました

分類Dev

mysqlデータベースへの接続中にエラーが発生しました。

分類Dev

データベースへの接続中にエラーが発生しました

分類Dev

MySQLデータベース接続IIS10の確立中にWordPressエラーが発生しました

分類Dev

WordPress 'データベース接続の確立中にエラーが発生しました'

分類Dev

jqgridとのデータベース接続中にエラーが発生しました

分類Dev

SQLデータベースへの接続中にエラーが発生しました

分類Dev

データベースへの接続中にWP-CLIエラーが発生しました

分類Dev

Wordpress「データベース接続の確立中にエラーが発生しました」

Related 関連記事

  1. 1

    SpringBootアプリケーションからローカルMySQLデータベースへの接続中にエラーが発生しました

  2. 2

    ローカルデータベースサーバーへの接続中にエラーが発生しました

  3. 3

    データベースとの接続時に奇妙なエラーが発生しました

  4. 4

    ノードjsアプリを介してopenshiftでmysqlデータベースに接続中にエラーが発生しました

  5. 5

    Java Webアプリケーションをmysqlデータベースに接続したいのですが、エラーが発生します

  6. 6

    Firebirdデータベースファイルのアップロード時にエラーが発生しました

  7. 7

    リモートherokupostgresqlデータベースへの接続でエラーが発生します

  8. 8

    データベース(JAVA)への接続中にSQL構文でエラーが発生しました

  9. 9

    インターネットに接続していないときにローカルWAMPで「データベース接続の確立中にエラーが発生しました」

  10. 10

    エミュレーターでアプリを実行できません-デバイス「goldfish_pipe」のインスタンス0x0の状態をロード中にエラーが発生しました

  11. 11

    ネットワーク状態へのアクセス中にエラーが発生しました

  12. 12

    MINSTデータベースのダウンロード時にエラーが発生しました

  13. 13

    リクエスト時にLoopbackJSとPostgreSQL間の接続でエラーが発生しました

  14. 14

    PHPでMySQLデータベースに接続しようとしてエラーが発生しました

  15. 15

    新しく復元されたMDFデータベースへの接続中にアクセス拒否エラーが発生しました

  16. 16

    JoomlaのPGSQLデータベースへの接続中にエラーが発生しました

  17. 17

    データベース接続の確立中にエラーが発生しました-14.04のUbuntuWordPress

  18. 18

    データベースの接続エラータイプ:2002:アクセスが拒否されました

  19. 19

    Cloudflareでデータベース接続を確立するときにエラーが発生しました

  20. 20

    あるアプリを別のアプリのデータベースに接続するときにエラーが発生しました

  21. 21

    DjangoをGoogleAppEngineのGoogleCloudSQLPostgresデータベースに接続中にエラーが発生しました

  22. 22

    mysqlデータベースへの接続中にエラーが発生しました。

  23. 23

    データベースへの接続中にエラーが発生しました

  24. 24

    MySQLデータベース接続IIS10の確立中にWordPressエラーが発生しました

  25. 25

    WordPress 'データベース接続の確立中にエラーが発生しました'

  26. 26

    jqgridとのデータベース接続中にエラーが発生しました

  27. 27

    SQLデータベースへの接続中にエラーが発生しました

  28. 28

    データベースへの接続中にWP-CLIエラーが発生しました

  29. 29

    Wordpress「データベース接続の確立中にエラーが発生しました」

ホットタグ

アーカイブ