2011-06-12 5 views
0

친구는 오게임이라는 웹 브라우저 게임을 제안했습니다. 당신이 그것을 모르는 경우 나는 당신에게 말할 것입니다 : 광산 공장, 막사와 같은 것들을 만들어야하는 rts 게임. 흥미로운 것은 모든 건물에 빌드 시간이 있으며 계속 진행되기 때문에 건물에있는 동안 로그 오프 할 수 있다는 것입니다.mysql5에서 "내부"cron을 가질 수 있습니까?

나는 dbms를 통해 관리된다고 생각합니다. 나는 내가 costruction의 끝 시간을 가지고있는 나의 기록을 가지고있다. 건물을 업데이트 할시기를 어떻게 확인합니까? 업데이트해야 할 레코드를 매 초마다 확인하는 외부 응용 프로그램이 필요합니까? mysql5로이 테이블에서 프로 시저를 실행하는 내부 스케줄러를 사용할 수 있습니까? 그리고 그렇다면 모범 사례입니까?

답변

2

나는 비슷한 게임을 만들었고 나는 이벤트 테이블에 공사 종료 시간 (및 해고 될 다른 이벤트)을 저장했다. 나는 만료 된 레코드에 대한 이벤트 테이블을 정기적으로 검사하고 그에 따라 동작하는 PHP 데몬을 작성했습니다.

데이터베이스 자체에서 수행 할 수있는 방법을 찾지 못했습니다. 나중에 다른 데이터베이스로 마이그레이션하려는 경우 다시 작성해야합니다. cron 된 스크립트가 겹칠 수 있습니다. 데몬은 항상 모든 것을 추적 할 수 있으며, 이벤트가 처리되는 것보다 더 빨리 큐잉되면 디버그 정보를 출력 할 수 있습니다. 나는 또한 주기적으로 내 데몬이 실행 중인지 확인하기 위해 cron을 추가했다. 그렇지 않으면 시작했다. 도움이

Creating a daemon in PHP (당신이 PHP를 사용하는 경우)

희망.

+0

글쎄, 특정 dbms의 특정 기능을 사용하는 경우 재 작성 문제가 실제 문제 일 것입니다. phon에서 deamon을 만드는 방법을 살펴 보겠습니다. – dierre

관련 문제