문제

우리는 최근에 활성화 APC 에 우리의 서버는 경우 때때로 우리는 새로 게시하는 코드 또는 변경이 있는 원본 파일이 변경되었 던지기 시작하는 오류를 반영되지 않습니다 코드에서 일반적으로 구문 분석 오류를 설명하는 토큰하는 존재하지 않습니다.우리는 확인 이해 실행 php -l 파일에 대한 오류 로그에 영향을 받습니다.일반적으로 게시 문제를 해결합니다.우리가 사용하 PHP5.2.0 및 APC3.01.9.나의 질문은,다른 사람이 이것을 경험하는 문제,또는 사람이 인식하는 우리의 문제입니까?그렇다면,당신은 어떻게 수정 또는 어떻게 해야 하나요?

편집:아마 추가해야 할 일부에 대한 세부 정보는 우리의 게시하는 과정입니다.콘텐츠가 추진되고 생산 서버를 통해 재미난에서 준비 server.우리는 가능 apc.stat_ctime 기 때문에 이 말을 돕는 것이 부과 재동기화. apc.write_lock 은 기본적으로 설정되어 있으며 우리 하지 않은 기능을 사용 중지했습니다.에 대한 동감 apc.file_update_protection.

도움이 되었습니까?

해결책

소리처럼 부분에 출판된 파일을 읽고 캐시으로 나뉩니다. apc.file_update_protection 설계하는 데 도움이.

php.ini: apc.file_update_protection integer

apc.file_update_protection 설정 두에 지연을 캐시 새로운 브랜드 파일이 있습니다.기본값은 2 초 는 것을 의미하는 경우 수정 타임 스탬프(mtime)에 파일을 보여 줍니다 그것은 2 초 미만 된 때 액세스,그것을 캐쉬에 저장하지 않는다.불행한 사람 액세스 이 작성된 파일을 계속 볼 수 있습니다 불확실성,하지만 적어도 그것은 없 지속됩니다.

다음과 같은 질문을 편집:이유 중 하나는 내가 보지 않는 이러한 종류의 문제는 나를 밀어 새로운 복사본을의 사이트(SVN 수출).후에 완벽하게 완료 될가 눈에 보면 아파치는/mod_php 를(내 응답 시작하는 방법을 배포하 PHP 응용 프로그램에서 subversion 저장소? )

다른 일이 일어날 수 있는 물론,업데이트하는 경우에는 장소에서,당신할 수 있습 업데이트한 파일이 다른 사람에 의존하지 않은 업로드됩니다.재동기화할 수 있는 유일한 보증이 원자 업데이트에 대한 개별 파일이 아닌 전체 컬렉션되는 변경/로 업로드됩니다.또 다른 이유는 내가 생각하는 업로드하려면 사이트의 파일 이름을 입력하라는 메시지가 표며,다음 사용에 넣어.

다른 팁

APC가 올바른 파일 통계 정보를 미리 형성하거나 얻지 못하는 것처럼 들립니다. APC 구성을 확인할 수 있습니다. APC.STAT 올바르게 설정됩니다. 당신이 할 수있는 또 다른 일은 캐시를 지우도록 강요합니다. APC_CLEAR_CACHE () 새 코드를 게시 할 때.

내가 APC의 거대한 사용자이더라도 전에는 본 적이 없습니다. 서버에서 새 코드를 보낼 때마다 APC Opcode를 비우는 스크립트를 트리거하려고할까요?

구문 분석 오류가있는 파일을 받으면 백업 한 다음 repubish. 현재 작동하는 동일한 파일을 사용하고 구문 분석 오류로 파일에 대해 DIFF를 수행하십시오.

C 시간은 생성 시간을 의미합니다. 업데이트 할 때마다 전체 캐시를 수동으로 플러시하고 싶을 것입니다.

APC.PHP 스크립트를 서버 어딘가에 넣어 쉽게 수행 할 수 있습니다. 이 스크립트는 캐시 통계를 제공하며 캐시를 완전히 떨어 뜨릴 수 있습니다.

스크립트는 APC와 함께 제공됩니다.

Hopet 그의 도움, Evert

코드와 코드의 캐시 버전간에 불일치가 있기 때문에 이것은 아마도 발생할 수 있습니다.

예를 들어 APC에는 캐시 된 버전의 user.php가 있지만 user.php 또는 사용자가 사용하는 데이터를 변경했습니다. 캐시 된 버전은 아직 만료되지 않았기 때문에 배치 후에도 여전히 실행 중입니다.

배포 할 때 APC 캐시 항목을 지우면이 문제가 사라집니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top