You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 maand geleden
1 maand geleden
1 maand geleden
1 maand geleden
123456789101112131415161718192021222324252627
  1. import subprocess
  2. import sys
  3. import os
  4. def start_fastapi():
  5. environment = os.environ.get('environment', 'default')
  6. if environment == 'default':
  7. process = subprocess.Popen(["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "80"])
  8. else:
  9. process = subprocess.Popen(["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "5000"])
  10. return process
  11. def start_celery():
  12. if sys.platform == "win32":
  13. process = subprocess.Popen(["celery", "-A", "app.celery_app", "worker", "--loglevel=info", "-P", "solo"])
  14. else:
  15. process = subprocess.Popen(["celery", "-A", "app.celery_app", "worker", "--loglevel=info"])
  16. return process
  17. if __name__ == "__main__":
  18. # 启动 FastAPI 和 Celery
  19. fastapi_process = start_fastapi()
  20. # celery_process = start_celery()
  21. # 等待子进程完成
  22. fastapi_process.wait()
  23. # celery_process.wait()