run_all.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import subprocess
  2. import os
  3. # 定义要启动的应用及其路径和端口
  4. services = [
  5. ("data_processing/data_operation/data_join.py", 10094),
  6. ("data_processing/data_operation/mysql_to_mongo.py", 10095),
  7. ("data_processing/processing_limit_power/processing_limit_power_by_agcavc.py", 10086),
  8. ("data_processing/processing_limit_power/processing_limit_power_by_machines.py", 10087),
  9. ("data_processing/processing_limit_power/processing_limit_power_by_records.py", 10088),
  10. ("data_processing/processing_limit_power/processing_limit_power_by_statistics_light.py", 10085),
  11. ("data_processing/processing_limit_power/processing_limit_power_by_statistics_wind.py", 10093),
  12. ("evaluation_processing/analysis_report.py", 10092),
  13. ("evaluation_processing/evaluation_accuracy.py", 10091),
  14. ("models_processing/model_train/model_training_lightgbm.py", 10089),
  15. ("models_processing/model_predict/model_prediction_lightgbm.py", 10090),
  16. ("models_processing/model_train/model_training_lstm.py", 10096),
  17. ("models_processing/model_predict/model_prediction_lstm.py", 10097),
  18. ("post_processing/post_processing.py", 10098),
  19. ("evaluation_processing/analysis.py", 10099),
  20. ]
  21. # 获取当前脚本所在的根目录
  22. base_dir = os.path.abspath(os.path.dirname(__file__))
  23. # 启动所有服务
  24. processes = []
  25. for service, port in services:
  26. service_path = os.path.join(base_dir, service)
  27. print(f"Starting {service} on port {port}")
  28. env = os.environ.copy()
  29. env["PYTHONPATH"] = base_dir # 设置 PYTHONPATH 为项目根目录
  30. p = subprocess.Popen(["python", service_path], env=env)
  31. processes.append(p)
  32. # 等待所有进程结束
  33. for p in processes:
  34. p.wait()