php/MySQL을 사용한 시간있는 이벤트


4

일정한 시간이 지난 후에 테이블의 값을 수정하는 방법이 필요합니다. 나의 현재 방법은 다음과 같다 : 사용자가 변경하고자하는 값을 요청하는 페이지를로드 할 때

  • 가> = 종료 시간을 현재 지 확인 테이블 대기 기간

    • 삽입 종료 시간
    • 경우 값을 변경하고 종료 시간 필드를 제거하십시오. 그렇지 않은 경우 아무 것도하지 마십시오.

    이것은 사이트의 주요 기능이 될 것이므로 효율성이 핵심입니다. 그 점을 염두에두고, 내가 어떻게하는지에 관해 당신은 아마 그 문제를 볼 수있을 것이다. 동일한 코드 덩어리가 정보를 필요로하는 페이지에 액세스 할 때마다 호출 될 것입니다.

    개선이나 더 나은 방법에 대한 제안 사항은 php 또는 perl에서 제공하는 것이 좋습니다.

    크론 작업 응답에 대한 답변 : 감사합니다. 가능하면 가능하지만 호스트 제한이 문제입니다. 이것은 앱의 주요 부분이므로 제한 될 수 없습니다.

  •   0

    어떤 종류의 시간대를보고 있습니까? 몇 초 후에 업데이트하는 것이 쉽고, 몇 시간 후에 업데이트하는 것이 더 어렵습니다. 23 sep. 082008-09-23 19:20:33

      0

    을 공유 호스트에 설치하는 것은 최선책입니다. 이 방법의 효율성이 문제가되는 충분히 중요한 응용 프로그램 인 경우 더 나은 호스트가 필요합니다. 루트 액세스를 제공하고 원하는만큼 자주 cron을 실행할 수있는 저렴한 VPS를 얻을 수 있습니다. 23 sep. 082008-09-23 20:03:49

    2

    cron 작업을 사용하여 데이터베이스의 각 필드를 주기적으로 확인하고 그런 식으로 업데이트 할 수 있습니까?

    큰 부분은 업데이트가 필요한 빈도입니다. 많은 공유 호스트가 cron 점검 빈도를 제한합니다 (예 : 15 분마다). 이는 응용 프로그램에 영향을 미칠 수 있습니다.


    5

    왜이 정보를 배경으로 사용하기 위해 cron을 사용하지 않으시겠습니까? 그런 식으로 각 페이지 히트의 수표를 줄이고 실제로 앱의 요구 사항을 충족시키는 타이밍을 예약 할 수 있습니다.


    3

    cron에 액세스 할 수 없어 솔루션이 매우 논리적으로 들립니다. 또 다른 방법은 파일에 값을 저장하고 다음 번에 페이지가로드 될 때 마지막으로 수정 된 시간 (filemtime ("checkfile.txt"))을 확인한 다음 다시 수정해야하는지 결정합니다. 두 가지 방법 모두에 대해 성능을 테스트해야합니다.

      0

    좋은 생각처럼 들리네. 나는 그것을 시도 할 것이다. 감사. 23 sep. 082008-09-23 23:15:23


    0

    성능은 정말 당신은 각 페이지에 어떤 종류의 트리거를 사용할 수


    1

    당신이 정보를 저장하는 memchached 사용할 수 있습니다 (아마 당신은 생각하는 것보다 훨씬 더 많은 의미) 문제를, ...로 시작하는 경우 하중. 성능에 어떤 영향을 미칠지 모르지만 다른 사람들이 약간의 빛을 발할 수도 있습니다.

      0

    그건 본질적으로 내가하고있는 일이지만, 어쨌든 고마워. 23 sep. 082008-09-23 23:14:49