웹사이트 로딩 속도를 한계까지 밀어붙이는 고급 기술

게시 됨: 2018-12-26

속도가 필요합니다. 인용문은 일반적으로 자동차와 관련된 것이지만 웹에도 속도가 필요합니다. 사용자는 사이트가 빨리 로드되도록 요구할 뿐만 아니라 많은 사용자가 사이트 로드에 3초 이상 걸리면 짜증이 나기 시작한다고 보고합니다.

사이트가 사용자의 입력에 반응하는 데 8초 이상 걸리면 사용자는 사이트를 떠나고 다시는 돌아오지 않습니다. 당신은 영원히 고객을 잃게 될 것입니다.

사용자의 사용자 경험 외에도 웹사이트가 빨라야 하는 또 다른 방문자가 있습니다. 바로 Google입니다. 웹 사이트 로딩 속도는 실제로 순위 요소이며, 빠르게 로드되는 사이트와 비교할 때 빠르지 않은 사이트는 유기적 순위에서 불이익을 받습니다.

그러나 이미 이 모든 것을 알고 있을 것입니다. 사실 이 사이트에서도 웹사이트를 더 빠르게 로드하는 방법에 대한 수백 개의 기사가 있습니다.

그러나 우리는 그 모든 것 이상으로 나아갈 것입니다. 이제 기어를 높이고 웹사이트 로딩 속도를 한 단계 끌어올릴 몇 가지 고급 기술을 언급하겠습니다.

1. 가상 사설 서버(또는 그 이상)에서 사이트 호스팅

VPS(또는 가상 사설 서버)에서 웹사이트를 호스팅하는 것은 웹사이트 로드 속도를 높이기 위해 가장 먼저 해야 할 일이자 가장 쉬운 일입니다. 아주 진보된 것도 아니고, 특별히 최첨단도 아니지만, 그럼에도 불구하고 필수적입니다.

여기에는 여러 가지 이유가 있습니다.

그 중 첫 번째는 대부분의 호스팅 계정이 호스팅되는 사이트의 성능보다는 서비스를 제공하는 회사에 이익이 되는 데 초점을 맞추고 있다는 것입니다.

Improve Website Loading Speed

호스팅의 개념은 몇 대의 물리적 서버를 사용하여 수백 또는 수천 개의 웹 사이트를 수익을 창출하는 방식으로 배치하는 것입니다.

이것을 설명하기 위해 몇 가지 숫자를 실행해 보겠습니다.

호스팅 회사의 물리적 서버 비용은 월 $1000이고 공유 호스팅 계정의 가격은 월 $5입니다.

호스팅 서버는 손익분기점을 맞추기 위해 200개의 웹사이트($5 * 200 = $1000)를 호스팅해야 합니다. 240개의 사이트가 필요하며 해당 서버에서 한 달에 $200의 수익을 얻습니다.

따라서 공유 호스팅 계정은 서버의 리소스를 240개의 다른 웹사이트와 공유하고 있으며, 귀하의 웹사이트는 해당 모든 웹사이트와 리소스를 놓고 경쟁하고 있습니다.

귀하는 이러한 웹 사이트를 제어할 수 없으므로 귀하의 사이트는 귀하의 잘못이 아니라 서버를 사용하는 다른 사이트가 있기 때문에 느리게 실행될 가능성이 높습니다.

위의 숫자는 정확하지 않을 수 있지만 그 뒤에 숨겨진 개념은 실제입니다.

가상 사설 서버는 매우 다릅니다. 일반적으로 공유 호스팅 서버보다 비용이 약 5~10배 더 높기 때문에 호스팅 회사는 해당 서버에서 정당화하고 이익을 얻는 데 필요한 "클라이언트"가 더 적습니다.

그러나 웹사이트를 통해 비즈니스를 운영하는 회사의 경우 한 달에 몇 달러만 내고도 인색한 이유가 무엇입니까? 월 $29.95를 지불하는 것과 $4.95를 지불하는 것의 최종 차이는 무엇입니까? 은행이 무너지는 건 아니겠죠?

게다가 VPS 계정에는 일반적으로 각 계정에 대한 전용 리소스가 있습니다. 본질적으로 서버의 메모리 및 CPU 시간과 같은 이러한 리소스는 웹사이트와 웹사이트 전용으로 예약되어 있습니다.

이는 귀하의 웹사이트에 현재 사용자가 없고 해당 리소스를 사용하지 않는 경우에도 다른 계정이 귀하의 계정 리소스를 사용할 수 없음을 의미합니다.

이를 통해 각 계정은 일반적으로 훨씬 더 빠르게 실행할 수 있으며 VPS에서 호스팅되는 웹사이트는 일반적으로 공유 계정에서 호스팅되는 웹사이트보다 몇 초 더 빠릅니다.

호스팅 계정의 일부로 또는 소규모 추가 비용으로 Incapsula 및 HTTP2 지원과 같은 타사를 통한 CDN 또는 고급 웹사이트 보안 서비스와의 통합과 같은 가상 사설 서버 계정으로 무료 업그레이드를 제공하는 서비스가 많습니다. 수수료 – 모두 사이트의 원활한 운영을 보장합니다.

Improve Website Loading Speed

더 중요한 것은 VPS를 사용하면 클라이언트가 웹사이트를 실행하는 서버 소프트웨어 구성에 대한 전체 액세스 권한을 가지며 계정 전용 리소스에 대한 전체 관리 권한이 있다는 것입니다.

따라서 먼저 공유 호스팅 계정을 가상 사설 서버 또는 예산이 있는 경우 전용 서버로 업그레이드하십시오.

이것은 아래에서 언급할 다음 기술에서 중요한 것입니다. 대부분의 기술이 WHM에 액세스하거나 서버에 대한 관리 액세스가 필요하기 때문입니다.

2. MySQL 데이터베이스를 최신 버전 또는 MariaDB로 업그레이드

WordPress 또는 기타 CMS 또는 데이터베이스 기반 사이트를 실행하는 경우 웹 사이트에서 데이터베이스 백엔드로 MySQL을 사용하고 있을 가능성이 있습니다.

MySQL은 기본적으로 대부분의 호스팅 계정에 사전 설치되어 제공되기 때문입니다.

그러나 대부분의 사람들은 대부분의 계정에 설치된 기본 MySQL 버전이 꽤 오래되었다는 사실을 모르고 있습니다. 또한 속도에 최적화된 다른 기술과 비교할 때 그다지 빠르지 않습니다.

그리고 대부분의 사람들이 알지 못하는 것은 MySQL을 쉽게 대체할 수 있는 동등한 데이터베이스 엔진이 있다는 것과 웹사이트 속도를 향상시키는 것입니다.

이것은 MariaDB 데이터베이스 엔진 입니다. 그것은 실제로 MySQL의 원래 개발자에 의해 만들어졌으므로 그들이 이것을 MySQL과 100% 교환 가능하게 만들고 싶어할 것이라고 상상할 수 있습니다.

Improve Website Loading Speed

사실, 인프라에 이 빠른 데이터베이스 엔진을 사용하는 주목할만한 회사에는 Wikipedia, Google 및 WordPress.com이 포함됩니다!

MariaDB로 업그레이드하지 않더라도 최신 버전의 MySQL로 업그레이드하십시오. 최신 버전의 소프트웨어는 항상 이전 버전보다 더 빠르고 효율적입니다.

물론 업그레이드는 마음이 약한 사람을 위한 것이 아니며 본질적으로 위험한 절차이며 잘 작동하지 않는 경우에 복원할 수 있는 백업이 있어야 합니다.

또한 서버 또는 VPS에 대한 루트 액세스 권한이 있어야 하므로 VPS 또는 전용 서버로 업그레이드해야 한다고 언급한 이유입니다.

이렇게 하려면(전체 VM 백업을 수행한 후) WHM에 로그인합니다.

>> 소프트웨어 >> MySQL/MariaDB 업그레이드 로 이동하십시오.

그러면 자동으로 업그레이드를 수행하기 위해 따라갈 수 있는 간단한 마법사가 있습니다.

Improve Website Loading Speed

3. 최신 버전의 PHP7로 업그레이드

이전에 언급한 것처럼 대부분의 호스팅 계정에서 PHP 설정의 기본 버전이 가장 빠르지 않다는 것을 알게 될 것입니다.

예를 들어 호스팅 기본 버전이 PHP5.6인 경우 몇 년(2017년 1월) 동안 지원이 중단되었습니다.

버전 7.0에 대한 지원도 2017년 12월부터 지원이 종료되며 현재 지원되는 버전은 버전 7.2입니다.

그러나 레거시 이유로 대부분의 호스팅 계정은 여전히 ​​이러한 이전 버전의 PHP를 기본으로 사용합니다. 그러나 실제로 PHP7.2는 매우 빠른 엔진입니다!

Improve Website Loading Speed

좋은 호스팅 서비스는 7.2 엔진을 사이트에 사용할 수 있도록 허용해야 합니다. 사용할 수 없는 경우 서비스를 더 나은 서비스로 전환해야 할 때입니다.

물론 웹사이트에서 실행 중인 소프트웨어가 이 버전의 PHP와 호환되는지 항상 확인하십시오. 업그레이드할 때 문제가 발생하면 특정 공급업체에 다시 확인하여 수정 사항이나 해결 방법이 있는지 또는 업데이트해야 하는 버전이 있는지 확인해야 합니다.

4. PHP용 OpCache 설정

여기 기사를 따라 사이트에 대한 브라우저 캐싱을 구현하고 웹사이트 사본을 실제로 생성하는 파일 캐싱 메커니즘을 구현하여 웹사이트가 빠르게 제공될 수 있도록 해야 한다는 것을 반복해서 읽었을 것입니다.

그러나 당신이 알지 못할 수도 있는 3단계 캐싱이 있습니다. 그러나 아마도 서버 응답 시간을 0.5초 미만으로 줄일 수 있는 수준일 것입니다.

이것은 바이트코드 캐싱이며 PHP의 실제 실행을 더 빠르게 만들기 위한 것입니다. PHP가 작동하는 방식은 스크립트를 실행되는 opcode로 컴파일하는 것입니다.

opcode는 PHP 코드가 실행될 때마다 생성됩니다. 이것이 의미하는 바는 PHP 코드가 변경되지 않으면 opcode로의 생성은 시간과 자원의 낭비라는 것입니다.

바이트코드 캐싱은 opcode를 메모리에 저장하여 시간을 절약하고 PHP를 실행해야 하는 경우 컴파일된 코드를 메모리에서 가져와 즉시 실행합니다.

이것은 PHP 코드의 실행을 번개처럼 빠르게 만듭니다. 업그레이드된 데이터베이스 서버에서 실행되는 VPS와 WordPress 사이트 또는 CMS의 파일 수준 캐싱을 결합하면 서버 응답 시간은 일반적으로 200~400ms 이내입니다.

더 중요한 것은 이러한 서버 응답 시간은 일반적으로 Google이 순위 요소(TTFB)로 사용하는 측정으로 생각되는 측정이므로 이 응답 시간을 높이는 것이 중요합니다.

이를 활성화하는 방법에는 여러 가지가 있습니다. 이 작업을 수행하는 가장 좋은 방법은 OpCache가 포함된 EasyApache4에서 구성을 활성화한 다음 그에 따라 설정을 구성하는 것입니다.

Improve Website Loading Speed

5. Apache 대신 Nginx 선택

우리의 최종 권장 사항은 약간 과감하고 많은 변경이 필요하지만 고급 기술에 대해 논의하고 있다는 점을 감안할 때 이것을 제외할 수 없습니다.

Apache는 말 그대로 수십 년 동안 사이트 호스팅을 위한 표준 웹 서버였지만, 주로 Nginx라는 강력한 경쟁자 때문에 인기가 떨어지고 있습니다.

Improve Website Loading Speed

이 웹 서버는 특히 인프라의 모든 측면을 최적화할 수 있어야 하는 매우 바쁜 사이트에서 Apache를 능가할 수 있기 때문에 꾸준히 인기를 얻고 있습니다. Nginx는 일반적으로 동시 연결과 관련하여 Apache를 능가합니다. 즉, Apache보다 더 많은 사용자에게 동시에 서비스를 제공할 수 있습니다.

Nginx는 서버를 사용하는 총 웹 사이트 수에서 Apache를 인수하지 않았지만 웹에서 상위 10,000개 웹 사이트에서 Apache를 훨씬 능가했으며 Nginx는 사이트의 60% 이상을 지원합니다. 20%.

Nginx가 동시 연결과 관련하여 Apache를 능가할 수 있는 측면을 고려할 때 일반적으로 분당 수백 또는 수천 개의 사이트를 제공하는 상위 10,000개 사이트를 고려할 때 Nginx가 그 자리를 차지하는 것은 놀라운 일이 아닙니다. .

따라서 사이트에서 여러 연결을 효율적으로 수행해야 하는 경우 Nginx가 논리적인 결론입니다.

물론 인프라가 이미 설정되어 있는 경우 Apache에서 Nginx로 전환하는 것은 마음에 들지 않습니다.

당신은 할 필요가 있습니다

  1. 모든 소프트웨어가 Nginx와 완전히 호환되는지 확인하십시오.
  2. Nginx 및 사이트에 필요한 추가 모듈 설치
  3. Apache에 대한 모든 구성 및 조정을 Nginx로 전환(구성 방식이 다름)
  4. 서버를 한계까지 밀어붙이는 데 필요한 성능 조정을 구현합니다.

CPanel 및 WHM에서 Nginx를 설정하는 가장 쉬운 방법은 Engintron이라는 모듈을 사용하는 것입니다.

마무리

위의 기술은 희미한 마음을위한 것이 아닙니다. 그들은 신중한 고려가 필요하며 그러한 급격한 변경을 수행하여 발생할 수 있는 문제에 대해 사이트를 테스트했는지 확인하기 위한 전체 프로세스가 필요합니다. 그러나 위의 대부분의 변경 사항을 구현하면 사이트 로딩 시간을 2초 미만으로 쉽게 줄일 수 있습니다. 그렇게 하면 몇 개월 후에 이탈률, 순위 및 가장 중요한 고객 만족도가 높아지는 혜택을 볼 수 있습니다!