ckk9618
201
2019-03-15 15:12:50
4
232

crontab 관련 질문이 있습니다.


안녕하십니까 crontab관련 궁금한점이 있어 이렇게 질문을 하게되었습니다.


crontab 으로 DB관련 서비스를  돌려야 하는경우 

DB가 커지면 작업시간이 증가하는대 

crontab을 예를들어 1시간마다 실행으로 설정 해두면


1시간이내로 작업이 끝날때는 ps가 하나만 생성되었다가 사라지게되는데

DB 데이터가 커져서 작업시간이 늘어나 1시간 이상이 되버리면

ps가 다중으로 생겨서 동시에 작업을 하게되는 식인가요(멀티쓰레드처럼?)?

이런식으로 이해 하고있으면되는건지 궁금해서 질문해봅니다..

0
0
  • 답변 4

  • venetianGM
    58
    2019-03-15 16:00:04

    crontab은 운영체제스케줄러로, 기본적으로 약속된 시간에 프로세스가 생성됩니다.(쓰레드x)

    1시간이 초과되면 중복실행되게 되는거죠...

    1
  • 다다
    2
    2019-03-15 16:40:05

    전 모르겠슴미다ㅋㅋ

    0
  • 하두
    9k
    2019-03-15 16:53:45 작성 2019-03-15 16:57:21 수정됨

    2개 뜨는거죠.  세시간 지나면 3개가 뜨고요.

    그래서 중복프러세스 방지처리를 해야합니디ㅡ.

    ps 를 체크해서 없을때만 실행하게 해야 합니다.


    아래 shell  script참조바랍니다.

    사진이라 글씨가 ㅠㅠ

    https://m.blog.naver.com/ddomija/221204712452


    0
  • ckk9618
    201
    2019-03-15 17:05:33

    하드웨어적인 하이퍼쓰레드 말씀이 나와서.

    제가 쓰레드를 괜히 언급해서 질문이 이상하게 된것같습니다..


    1시간마다 생성되는 프로세스 

    1시간 30분 작업짜리작업시 


    1시간 경과하면

    PS1 1시간실행되고 30분남은 프로세스

    PS2 막 생성된 프로세스

    두개가 메모리에 올라가있고

    OS가 관리한다..

    대충 저는 이렇게 생각하고있었는데 밑에 분이랑 제 생각이 같네요.. 답변주신분들 감사합니다.


    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.