>  기사  >  PHP 프레임워크  >  Swoole 핫 업데이트 방법

Swoole 핫 업데이트 방법

(*-*)浩
(*-*)浩원래의
2019-12-07 13:59:313034검색

Swoole 버전의 반복 업데이트로 충분히 안정적이 되었습니다. Alibaba, Tencent, YY와 같은 대기업에서도 사용하고 있습니다. 게임계의 많은 친구들도 자주 언급합니다. 질문., 코드가 업데이트될 때마다 서비스를 중지했다가 다시 시작해야 코드를 업데이트할 수 있습니다. 하지만 이 방법은 비교적 조잡합니다.

Swoole 핫 업데이트 방법

사실 swoole은 다시 로드 기능을 제공하고 코드의 핫 업데이트를 완벽하게 지원합니다.

swoole의 reload를 소개하기 전에 웹 메소드가 어떻게 파일을 변경하고 즉시 적용되는지 간략하게 설명하겠습니다.

#🎜 ## # 几#여러 개념:

(추천 학습:SWOOLE 비디오 튜토리얼)🎜🎜#1) SAPI: 단순히 외부 A 통합에 대한 PHP 엔진으로 이해될 수 있습니다. PHP가 외부 프로그램과 상호 작용할 수 있게 해주는 인터페이스

2) PHP 수명 주기의 네 가지 주요 호출: MINT -> RINT -> MSHUTDOWN

#🎜🎜 #3) fpm: fastcgi 프로세스 관리자

그런 다음 fpm의 프로세스는 다음과 같습니다. fpm이 sapi 인터페이스를 통해 PHP 프로세스와 상호 작용합니다.


첫 번째 단계: 각 확장의 MINT 메서드가 호출되어 일부 데이터 초기화(메모리에 상주)를 수행합니다.


두 번째 단계: 각 요청이 먼저 실행됩니다. RINT는 단일을 초기화합니다. 요청 라인,

세 번째 단계: PHP 스크립트 실행,

네 번째 단계: RSHUTDOWN 메서드 실행,

다섯 번째 단계 단계: fpm을 중지하려면 MSHUTDOWN이 실행됩니다.

fpm은 2~4단계를 반복적으로 실행하여 각 요청을 처리합니다.

3단계에서는 php 스크립트가 동적으로 실행되는데, php 스크립트는 매번 한 번씩 실행되어야 하고, 각 php 스크립트에는 핸들러가 있어야 하기 때문입니다. PHP 파일을 opcode로 변환(상대적으로 시간이 많이 소요됨)하여 opcache 도구가 만들어졌습니다.

opcache: PHP로 변환된 opcode 코드 트리를 공유 메모리에 직접 저장하여 직접 사용할 수 있으므로 매번 PHP를 opcode로 변환하는 오버헤드가 줄어듭니다.


opcache 문제: 그의 설명에 따르면 php 파일이 수정되어 즉시 업데이트할 수 없습니다.


opcache 해결 방법: 예 A 구성. 파일 업데이트 여부를 감지하는 기간을 설정하여 두 번째 단계에서 관련 파일을 다시 로드할 수 있습니다.


물론 fpm을 직접 다시 로드할 수도 있습니다. 따라서 PHP 핫 업데이트 효과를 얻을 수 있습니다(opcache 확장은 네 번째 단계에서 관련 opcode 캐시를 지울 수 있습니다).

위 내용은 Swoole 핫 업데이트 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:스울을 켜는 방법다음 기사:스울을 켜는 방법