2012-03-15 2 views
1

데이터가 데이터베이스에 삽입 된 후 시간이 4 또는 6인지 또는 12 시간인지를 확인하는 응용 프로그램을 구현 중입니다.
예 :
데이터가 오후 1시에 삽입 되었다면 이미 오후 5시 () 데이터가 삽입 된 후 데이터가 일 때 4 시간이됩니다. 내 응용 프로그램은 다른 작업을 처리 할 것입니다. 그것을 커버 :크론 작업은이 작업을 수행하기에 좋은 아이디어입니까? PHP

id | name | time_added | time_to_check 

ID 물론 유형 INT()
이름 VARCHAR()
time_added이 유형 INT이다()입니다 : D)는

그래서이 내 데이터베이스 필드의 사진입니다 내가 time() 재미를 사용하고 있기 때문에 값을 삽입하기위한 PHP의 명령. 이것이 내가 4, 6, 12

그래서 내 질문에 내가 어떻게이 일을 구현하는 것입니다 삽입 것이다 분야이기 때문에
time_to_check는 유형 INT입니까? 이 작업을 수행하기 위해 Cron Job을 설정하는 것이 좋은 생각입니까?
예, 몇 시간마다 Cron Job을 실행해야합니까 (15 분마다, 1 일 1 회)? 나는이 일을 할 때 많은 고려가 있다는 것을 알고있다. 그래서 나는 너의 아이디어가 필요해.

아이디어가 있다면 나와 공유하거나 코드를 구현하는 방법을 코드화하십시오. 도움이 될 것입니다.
대단히 감사합니다! :)

는 정보 추가 : 그것을 실행하는 방법에 대한
내 관심있는 모든 분은 모든 데이터가 동시에 삽입되어 있다는 것입니다. 예 :
데이터 1이 오후 3:15에 추가되었으며 확인 시간이 4 시간
데이터 2가 오후 3:20에 추가되었으며 확인 시간은 4 시간입니다.

오후 3시 15 분 또는 3시 20 분에 cron 작업이 실행되지 않으면 어떻게해야합니까?

+1

"정확한 4/6/12 시간 이후"또는 "적어도 4/6/12 시간 후에"예정된 타이밍입니까? – Sirko

답변

0

아마도 가장 좋은 방법은 데이터베이스에서 확인하고 통과 할 레코드를 확인하는 것입니다.

얼마나 자주 원하는지는 대부분 시간이 얼마나 필요한지에 달려 있습니다. 예를 들어, 내 게임에서 나는 크론이 목적지에 도착하는 함대를 확인하기 위해 매분마다 달리고 있지만 금지 된 사용자가 문장을 제공했는지 확인하고 unbanning 할 필요가 있는지 확인하기 위해 매시간 만 점검합니다.

+0

cron 작업을 1 분마다 실행해도 서버에 해를 입히지 않습니다. 이미 수십만 개의 데이터가 있다면이를 실행하는 데 시간이 걸리므로 1 분이면 충분하지 않을 수 있습니다. 어떻게 생각해? :) – PinoyStackOverflower

0

예 크론 작업이이 작업에 유용 할 것입니다. 확인하고 싶은 시간의 LCM으로 실행해야합니다. 그래서 내가 볼 수있는 것으로부터 2 시간 후에 실행해야합니다. (반올림으로 인해 약간의 오차가있을 수 있습니다.) 완전한 정확도가 필요한 경우 매분 확인해야합니다.

0

나는이 작업을 cronjob으로 권합니다. 사용법과 몇 가지 예가 여기에 설명되어 있습니다. http://en.wikipedia.org/wiki/Cron

소요 시간은 필요에 따라 다릅니다. 4,6 또는 12 시간 동안 확인하면 시간당 cronjob이 괜찮은 것 같습니다.

1

삽입 후 4, 6, 12 시간에 데이터를 일상적으로 처리해야하는 경우 특정 시점에 프로세스를 대기시킬 수있는 Linux (PHP가 아님) 'at'명령을 사용할 수도 있습니다 .많은 삽입물을 기다리고 있다면 cron은 더 나은 옵션입니다.

관련 문제