PHP 작업자란 무엇이며 왜 관심을 가져야 합니까?

게시 됨: 2022-06-30

좋아하는 커피숍의 웹사이트를 검색하다가 새로 주문한 커피를 체크아웃할 때 지연 후 504 오류가 발생한 적이 있습니까?

아니면 좋아하는 스포츠 웹사이트를 탐색하다가 다음 페이지를 로드하려고 할 때 로드하는 데 시간이 걸리고 시간 초과 오류가 표시됩니까?

이러한 상황은 실망스럽고 사이트를 볼 때 기대하는 것과 다릅니다. 두 경우 모두, 사이트에 할당된 PHP 작업자가 충분하지 않기 때문일 수 있습니다. PHP 작업자가 충분하지 않으면 사이트에서 들어오는 모든 사이트 요청을 처리할 수 없습니다. 방문자를 판매 리드 및 고객으로 전환하는 데 사이트 속도가 매우 중요하기 때문에 좋은 상황은 아닙니다.

PHP 작업자란 무엇입니까?

PHP 작업자란 무엇입니까? PHP 작업자는 페이지를 빌드하고 사이트에서 백엔드 처리가 필요한 요청을 처리합니다. PHP 작업자는 사이트 방문자를 위한 HTML 페이지 생성을 직접 담당합니다. 이 때문에 웹사이트가 주어진 시간에 처리할 수 있는 캐시되지 않은 요청의 수를 결정합니다.

이것은 일반적으로 특정 품목에 대한 재고 확인과 같은 활성 작업이거나 고객의 모든 이전 주문을 보고 나열하는 것과 같은 복잡한 작업일 수 있습니다. PHP 작업자가 시작되면 프로세스가 완료되거나 특정 조건이 충족될 때까지 지속됩니다.

PHP 작업자를 식료품점의 계산대 라인으로 생각하면 스캔할 각 품목이 PHP 프로세스입니다.

PHP 작업자가 한 명만 있는 경우(체크아웃 라인 하나) 모든 것이 해당 단일 체크아웃 레인을 통과해야 하며 계산원은 한 번에 하나의 주문만 처리할 수 있습니다. PHP 작업자는 사이트에서 동시 또는 동시 트랜잭션 수를 제한할 수 있습니다. 앞서 언급했듯이 PHP 작업자가 4개(체크아웃 라인 4개)만 있는 경우 사이트는 한 번에 4개의 트랜잭션만 처리할 수 있습니다.

WordPress 플러그인에 대한 2022년 필수 가이드 >>

단, 5번째 고객(PHP 프로세스) 이상은 처리되지 않는 것은 아닙니다. PHP 프로세스는 작업자의 대기열에 배치됩니다. 즉, 대기열의 첫 번째 요청을 처리한 다음 대기열의 다음 PHP 프로세스로 이동합니다. 즉, 긴 줄이 형성되고 사람들이 기다리기 시작합니다.

다행히 PHP 작업자는 식료품 점 계산원보다 정보를 더 빨리 처리합니다. 매우 빠르게 작동하며 밀리초 이내에 대부분의 프로세스를 지울 수 있습니다. 몇 명의 추가 PHP 작업자만 있으면 한 번에 실행할 수 있는 더 많은 동시 프로세스를 가질 수 있습니다. 즉, 더 많은 고객 주문을 한 번에 처리할 수 있습니다.

사이트당 PHP 작업자가 너무 적으면 어떻게 되나요?

사이트에 두 명의 PHP 작업자만 있고 여러 플러그인과 무거운 테마가 있다고 가정해 보겠습니다. 이 두 PHP 작업자는 사이트 방문자의 새 페이지 요청에 대해 즉시 구축하기 위해 대기열을 떠나는 플러그인 및 테마 프로세스를 처리하는 데만 지속적으로 사용됩니다.

이것 위에 전자 상거래 사이트를 운영하는 경우 대기열 양만 증가합니다. 고객이 줄을 서서 기다리는 것처럼 일부 PHP 프로세스는 줄을 멈춥니다. 라인을 포기하거나 시간 초과되도록 작성되지 않은 프로세스는 앉아서 기다릴 것입니다. 그런 다음 서버 리소스에 훨씬 더 많은 부하를 가하기 시작합니다. 마치 계산대가 블록을 둘러싸고 있는 것과 같습니다!

워드프레스 웹사이트의 PHP 프로세스는 연락처 양식을 제출하거나 방문자의 IP 또는 우편번호를 기반으로 지리적 위치를 찾는 요청만큼 간단할 수 있습니다.

전자 상거래 웹 사이트의 경우 약간 다르게 보일 수 있습니다. 처리 중인 새 주문, 카트 및 고객 로그인과 같은 항목은 모두 PHP 작업자를 사용합니다. 제품이나 설명은 일반적으로 보기 위해 PHP 프로세스가 필요하지 않도록 일반적으로 캐시됩니다. PHP 작업자가 3~5명에 불과하다는 것은 웹사이트에서 그 만큼의 동시 트랜잭션만 가질 수 있고 PHP 작업자가 트리거된 순서대로 요청을 처리한다는 의미입니다(쇼핑 라인처럼).

PHP 작업자의 부담을 줄이는 방법

PHP 작업자의 일반적인 문제 영역은 너무 많은 플러그인과 무거운 테마를 사용하는 것입니다. 일반적으로 다음 팁을 사용하여 웹 사이트가 부풀어 발생하는 문제를 완화하는 데 도움이 될 수 있습니다.

  1. 플러그인으로 사이트 캐싱 추가
  2. 원격 사이트에 대한 외부 호출 감소
  3. 일반 사이트 최적화

사이트 최적화는 특히 세부 사항에 더 많은 주의가 필요한 트래픽이 많이 발생하는 사이트의 경우 복잡해질 수 있습니다. 일반적으로 사이트가 클수록 사이트의 스타일, 제품, 주문 및 고객을 요청하는 방식이 더 효율적이어야 합니다. 이렇게 하면 일반 사이트 기능에 PHP 작업자를 덜 활용하고 PHP 작업자가 중요한 트래픽(트래픽)을 효과적으로 처리할 수 있습니다.

Nexcess 계획에는 가장 큰 사이트에서도 트래픽을 관리할 수 있는 충분한 동시 사용자가 제공됩니다.

Nexcess를 사용하면 XS 계획의 일부로 이미 20명의 동시 사용자가 있습니다. 이것은 XXL 계획(120개 있음)으로 올라갈수록 20씩 증가합니다.

WordPress 성능 최적화에 대한 초보자 가이드 >>

다른 관리형 애플리케이션 플랫폼은 입문용으로 2~4명의 PHP 작업자를 제공합니다. Nexcess Managed WordPress, WooCommerce 및 Magento 호스팅에는 정적 콘텐츠를 처리하기 위해 PHP 작업자의 사용을 최소화하는 데 도움이 되는 서버 측 캐싱이 내장되어 있어 PHP 작업자가 가장 중요한 사람들인 고객의 요청을 처리할 수 있습니다.

더 많은 PHP 작업자로 더 빠른 사이트 유지

그러나 PHP 작업자는 각각 수천 개의 프로세스를 관리할 수 있습니다. 다음을 포함한 많은 요인이 작용합니다.

  • 얼마나 많은 외부 전화를 걸고 있습니까?
  • 얼마나 많은 플러그인이 데이터베이스에 대한 문의와 경쟁하고 있습니까?

또한 사이트에 PHP 작업자를 추가하면 서버에서 사용되는 리소스 할당도 늘어납니다. 더 많은 PHP 프로세스가 실행될수록 더 많은 RAM과 CPU 할당이 필요하므로 서버에 더 많은 부하를 생성하고 최대한 최적화하면 해당 서버 부하를 줄일 수 있습니다. PHP 작업자가 핵심이지만, 모두에게 적용되는 마법 같은 솔루션은 아닙니다.

플러그인(비활성 플러그인 포함)이 많을수록 비정적 요청을 처리하는 데 더 많은 PHP 작업자가 사용됩니다. 기능이 많은 테마에도 동일하게 적용됩니다.

이러한 이유로 PHP 작업자의 작업 부하를 줄이기 위해 항상 캐싱과 CDN(콘텐츠 전달 네트워크)을 사용하는 것이 좋습니다. 이렇게 하면 가능한 가장 빠른 방법으로 고객 요청을 처리하도록 사이트를 최적화할 수 있습니다.

Nexcess의 완전 관리형 호스팅 에 더 나은 기능이 내장 되어 있습니다.

웹사이트 성능 향상은 고품질 호스팅에서 시작됩니다. Nexcess 완전 관리형 WordPress 및 WooCommerce 호스팅을 사용하면 다음을 얻을 수 있습니다.

  • 트래픽이 급증하는 동안 사이트를 빠르게 유지하기 위한 자동 확장.
  • 빠른 로딩 시간을 위해 자동으로 최적화된 이미지.
  • 내장된 CDN 덕분에 매우 빠른 로드 시간.
  • 그리고 더!

사용자들이 Trustpilot에서 별점 5점 만점에 4.6점을 준 이유를 확인하세요. 귀하의 사이트에 최적화된 호스팅을 경험하십시오. 오늘 시작할 계획을 확인하십시오.