mysql 프로시저 관련 질문드립니다.
글쓴이: sysmoon / 작성시간: 화, 2011/08/02 - 4:11오후
안녕하세요
특정 테이블에 트리거 발생시 프로시저를 호출하고자 합니다.
이 프로시저는 while() 루프를 돌고 있고 특정 필드를 모니터링 하는 기능입니다.
1. while() 루프 내에서 주기적으로 sleep 을 주어야 하는데 어떤 함수를 써야 할지 모르겠습니다.
일단 mysql 레퍼런스를 보니 sleep()함수가 있어서 if sleep(1000000) = 0 then 이러한 함수를 썼고..
1초가 지나면 리턴 0이 되는 if 문을 만든건데.. if문을 제외한 sleep(1000000); 함수만 쓰면 에러발생합니다.
2. mysql> show procedure status... 명령어를 통해 프로시저가 정상적으로 생성된것을 확인했고,
트리거 발생시마다 프로시저가 호출될텐데.. 동시세 50개 이상이 호출될 수 있습니다.
즉 50개의 프로시저가 호출되어 while() 루프를 돌면서 실시간으로 테이블 데이터 값을 모니터링 합니다.
스레드 개념으로 만든거라.. 이럴 경우 50개의 프로시저 관리를 어떻게 해야 하나요?
실제 50개가 실행 중인지도 모르는 상태입니다.
스레드 생성 함수가 보이지 않아 프로시저 내에서 while()루프를 돌리고 프로시저를 50개 이상 동시에 호출시키도록 했습니다.
이러한 접근 방법이 맞는지요?
Forums:
댓글 달기