File tree Expand file tree Collapse file tree 2 files changed +11
-5
lines changed Expand file tree Collapse file tree 2 files changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -27,15 +27,20 @@ def init_celery() -> celery.Celery:
2727 celery .app .trace .build_tracer = celery_aio_pool .build_async_tracer
2828 celery .app .trace .reset_worker_optimizations ()
2929
30+ broker_url = f'amqp://{ settings .CELERY_RABBITMQ_USERNAME } :{ settings .CELERY_RABBITMQ_PASSWORD } @{ settings .CELERY_RABBITMQ_HOST } :{ settings .CELERY_RABBITMQ_PORT } /{ settings .CELERY_RABBITMQ_VHOST } '
31+ if settings .CELERY_BROKER == 'redis' :
32+ broker_url = f'redis://:{ settings .REDIS_PASSWORD } @{ settings .REDIS_HOST } :{ settings .REDIS_PORT } /{ settings .CELERY_BROKER_REDIS_DATABASE } '
33+
34+ result_backend = f'db+postgresql+psycopg://{ settings .DATABASE_USER } :{ settings .DATABASE_PASSWORD } @{ settings .DATABASE_HOST } :{ settings .DATABASE_PORT } /{ settings .DATABASE_SCHEMA } '
35+ if settings .DATABASE_TYPE == 'mysql' :
36+ result_backend = result_backend .replace ('postgresql+psycopg' , 'mysql+pymysql' )
37+
3038 # https://docs.celeryq.dev/en/stable/userguide/configuration.html
3139 app = celery .Celery (
3240 'fba_celery' ,
33- broker_url = f'redis://:{ settings .REDIS_PASSWORD } @{ settings .REDIS_HOST } :{ settings .REDIS_PORT } /{ settings .CELERY_BROKER_REDIS_DATABASE } '
34- if settings .CELERY_BROKER == 'redis'
35- else f'amqp://{ settings .CELERY_RABBITMQ_USERNAME } :{ settings .CELERY_RABBITMQ_PASSWORD } @{ settings .CELERY_RABBITMQ_HOST } :{ settings .CELERY_RABBITMQ_PORT } ' ,
41+ broker_url = broker_url ,
3642 broker_connection_retry_on_startup = True ,
37- result_backend = f'db+{ settings .DATABASE_TYPE } +{ "pymysql" if settings .DATABASE_TYPE == "mysql" else "psycopg" } '
38- f'://{ settings .DATABASE_USER } :{ settings .DATABASE_PASSWORD } @{ settings .DATABASE_HOST } :{ settings .DATABASE_PORT } /{ settings .DATABASE_SCHEMA } ' ,
43+ result_backend = result_backend ,
3944 result_extended = True ,
4045 database_engine_options = {'echo' : settings .DATABASE_ECHO },
4146 # result_expires=0,
Original file line number Diff line number Diff line change @@ -210,6 +210,7 @@ class Settings(BaseSettings):
210210
211211 # 基础配置
212212 CELERY_BROKER : Literal ['rabbitmq' , 'redis' ] = 'redis'
213+ CELERY_RABBITMQ_VHOST : str = ''
213214 CELERY_REDIS_PREFIX : str = 'fba:celery'
214215 CELERY_TASK_MAX_RETRIES : int = 5
215216
You can’t perform that action at this time.
0 commit comments