Linux를 처음 접한 저는 이것을 screen
백그라운드 프로세스를 계속 실행하는 데 사용합니다.
예를 들어, Flask REST API가 있고 다음을 사용하여 해당 구성 파일을 실행합니다.
uwsgi --ini path_to_file/file.ini
이러한 API와 해당 conf 파일이 여러 개 있으므로 screen
하나의 API를 제외하고 모두 몇 달 동안 계속 실행되었습니다. 이 모든 것은 거의 동일한 데이터베이스에 액세스하는 것과 같습니다.
이 특정 API에 대한 conf 파일은 매일 다시 시작해야 합니다.
.ini 파일 실행을 처리하는 올바른 방법이 있습니까?
Ubuntu 16 및 Flask Restful 사용
답변1
@Panki가 그의 기사에서 지적했듯이논평, 대신 서비스를 만드는 것이 좋습니다.
그러나 이를 방지하려면 모든 논리(예: 특정 API 구성을 다시 시작)가 포함된 셸 스크립트를 작성하세요. 그런 다음 여기에 하루 간격으로 cronjob을 설정합니다. 하루 간격으로 cronjob을 설정하려면 crontab을 열고 다음 줄을 추가하세요.
30 14 * * * /path/to/your/shell/script
매일 오후 2시 30분에 스크립트가 실행됩니다. cronjob 설정에 대한 자세한 내용은 SO에 대한 이 답변을 참조하세요.https://stackoverflow.com/a/35575322/1944896
답변2
사용 nohup
:
nohup uwsgi --ini path_to_file/file.ini
또는
명령으로 스크립트를 작성하고 실행하십시오.nohup
nohup script.sh &
이렇게 하면 터미널을 닫은 후에도 프로그램이 계속 실행됩니다.