it-swarm-ko.tech

그것은 헤비급 플러그인이나 사이트를 느리게 플러그인 많이 있습니까?

나는 종종 플러그인을 많이 사용하는 것이 WordPress 사이트의 속도를 늦출 것이라고 들었습니다. 이것은 실행되는 코드가 많을수록 길어지기 때문에 당연한 것입니다.

나는 느린가가 대부분인지 궁금해.

  • 깎아 지른 플러그인 수의 결과? (왜냐하면 WP는 각 플러그인을 찾아서로드하기 위해 어떤 처리를해야하기 때문입니다)

  • 느린/무거운 플러그인이 몇 개있는 결과?

좀 더 실제적으로, 필자는 필자 자신의 글을 쓸 때 속도를 높이기 위해 더 적은 파일에 기능을 결합해야합니까? 또는 각각 10-20 개의 플러그인을 사용하여 빠른 작업을 수행 할 수 있습니까?

6
allclaws

일반 사항

경험의 규칙 "많은 플러그인은 사이트 속도를 늦춘다"는 매우 무뚝뚝한 도구이며 플러그인의 작동 방식을 이해하지 못하는 사람들에 의해 영구화되어 쉽게 악마를 제거 할 수있는 무언가를 선택합니다.

예, 플러그인은 사이트 속도를 늦출 수 있지만 품질과 관련된 수량 및 달성하려는 것과는 관련이 없습니다. 나는 하나의 플러그인을 작성하여 무릎을 꿇을 수있는 사이트를 만들 수 있었고 (내가 그렇게 해야하는 이유가 있다면) 50 개의 잘 작성된 다른 플러그인보다 나쁠 것입니다. 물론 사람들은 더 잘 알지 못하기 때문에 사이트를 무릎 꿇게하는 플러그인을 항상 작성합니다.

"많은 플러그인이 사이트를 느리게한다"에 대한 유일한 진실은 플러그인이 많을 때 나쁜 플러그인을 잡을 가능성이 높다는 것입니다.

사양

좀 더 구체적으로 이야기합시다. 플러그인은 실행 경로를 따라 특정 지점을 실행하는 PHP 코드 비트 인 "hooks"를 사용하며 무언가를 수행하거나 값을 필터링하거나 둘 다를 수행 할 수 있습니다. WordPress는 웹 페이지를 작성하고 HTML을 생성하여 브라우저로 전송하기 위해 후크를 호출하기 시작하고 주어진 페이지에 대한 실행이 완료 될 때까지 후크를 계속 호출합니다.

플러그인이 사용하는 후크에 따라 "background"의 특정 페이지에서만 또는 거의 전혀 호출되지 않을 수 있습니다. 일부 후크는 관리 콘솔 내에서만 작동합니다. 일부 후크는 관리 콘솔의 특정 페이지 내에서만 작동합니다. 그리고 일부 후크는 내부 psuedo-cron 시스템 에 의해 호출됩니다. OTOH, 일부 플러그인은 추가 CSS 또는 JS 파일을로드 할 수 있으며 이러한 파일 각각은 웹 성능 규칙 # 1 때문에 성능이 느려집니다.

각 페이지에서 어떤 후크가 호출되는지 느낌을 얻으려면 질문에 대해 쓴 " WordPress "플러그인 사용을 고려하십시오. " WordPress 후크 목록을 어디에서 찾을 수 있습니까? "다음은 플러그인을 사용할 때 바닥 글에 표시되는 내용의 스크린 샷입니다.

Screenshot of Instrument Hooks for WordPress Plugin in action

그러나 후크를 아는 것만으로는 플러그인에 문제가 있는지 확실하게 알 수 없습니다. 플러그인을 100 번 호출하면 수백 개가 넘는 게시물이있는 사이트를 중단시킬 수있는 SQL 쿼리에 WHERE 절을 추가하는 다른 후크 호출과 비교하여 호출 할 수 없습니다. 또는 다른 서버에 대한 HTTP 호출을 수행 할 수 있습니다. 또는 모든 페이지로드에서 다시 쓰기 규칙을 플러시 할 수 있습니다. 죄의 목록이 계속됩니다.

확실하게 알 수있는 유일한 방법은 소스 코드를 검토하거나 PhpStorm + XDEBUG 와 같은 디버거를 통해 더 잘 실행하여 플러그인의 후크를 감사하는 것입니다.

자신의 플러그인

코드 구성 방법에 대해 걱정하지 마십시오.성능 목적으로; 코드가하는 일에 대해 걱정하십시오. 자주 실행되는 SQL 쿼리 최적화Transient API 를 활용 한 구매 (_ 참조 : Transient API에 대한 프레젠테이션 )는 코드를 병합하는 것보다 성능이 훨씬 우수합니다 하나의 플러그인 10 개 중 하나입니다.

반면에 다른 이유로 코드를 구성하는 것을 고려하십시오. 많은 사용자에게 긴 플러그인 목록은 심리적 고통을 일으킬 수 있습니다라고 생각합니다. 그들은 다음과 같은 화면을보고 압도되어 일을 단순화하려고합니다.

Long List of Plugins
(출처 : mikeschinkel.com )

아직 반면하나의 플러그인이 너무 많아 사용자가 압도 당할 수 있습니다. 예를 들어 Gd Star Rating Plugin 을 사용하여 그렇게 느꼈습니다. 프로젝트에서 시도한 후 (그리고 더 필요한 경우, 필요한 것을 수행하기 위해 연결하려고 시도했습니다) 나는 귀에 그것을 던지기로 결정했습니다.

따라서 나와 같은 일부 사람들은 종종 각각 하나의 일을하고 잘하는 작은 단단한 플러그인을 많이 선호합니다 (WordPress가 어떻게 iPhone iOS와 같은 그룹화 기능을 지원한다면 좋을 것입니다 4를 사용하면 폴더 에서 앱을 그룹화 할 수 있습니다.)

Long List of Gd Star Rating Options
(출처 : mikeschinkel.com )

어쨌든 이것이 도움이되기를 바랍니다.

8
MikeSchinkel

자연스럽게 플러그인은 성능 이야기의 한 부분 일 뿐이므로 결국 파일 수로 측정 할 수는 없습니다. 더 많은 것이 있으며 무엇이 효과가 있는지 미리 말할 수 없으므로 컴퓨터에서 잘 될 수있는 것이 다른 사람들에게는 맞지 않습니다.

실적을 찾는 대신 결정을 내릴 다른 기준을 정의해야합니다. 예를 들어, 플러그인의 경우 별도의 기능을 별도의 플러그인에 넣는 것을 선호 할 수 있습니다. 이것은 속도 나 메모리 사용면에서 성능면에서 현명한 것은 아니지만 일은 가볍게 결합하여 플러그인을 개발하고 사용하는 것이 더 쉽습니다. 새 버전의 WordPress가 나왔을 때 항상 두 개의 플러그인 만 10 개에서 벗어날 수 있습니다. 그리고 결국 사용자는 10 개의 플러그인 중 3 개만 필요로하므로 더 적은 메모리가 필요합니다.

사용자가 자신/자신의 블로그 성능에 대해 불만을 제기하는 경우 일반적으로 더 큰 서버를 구입할 수 있으며 성능 문제가 해결 될 수 있음을 제안 할 수 있습니다.

(Pre-Mature) 최적화는 모든 악의 근원입니다. 플러그인 작성시 성능에 대해 더 이상 생각하지 마십시오. 가볍고 밝은 방법으로 가져 가라 : WordPress는 결국 성능이 현저하게 설계되지 않았고, 실수를하지 않고 실행 플러그인을 작성하려고 시도하지 않는다.)

WordPress는 Big Ball of Mud- (anti-) 디자인 패턴 으로 디자인되었습니다. 플러그인 시스템은 플러그인 시스템과 잘 작동합니다. 플러그인 작성자로서 그렇게 많이 최적화 할 수 있다고 생각하지 마십시오. 당신은 할 수 없습니다. 그것을 싸우지 마 :)

2
hakre

당신은 플러그인의 디자인이 잘되었을 때 수백 개의 플러그인으로 WordPress를 사용할 수 있습니다 - 대부분의 플러그인은 나쁜 코드를 가지고 있으며 이것은 WordPress의 성능 문제입니다.

0
bueltge

그것은 올바른 플러그 - 인에 관한 것입니다. 예를 들어, 플러그인이 자신의 테이블을 데이터베이스에 쓰는지 확인하십시오. 이렇게하면 일 반적으로 느려집니다. jquery 또는 javascript를 많이로드하는 것은 일반적으로 너무 느려지 게됩니다. 대량의 플러그인이 항상 성능 저하를 의미하는 것은 아닙니다. 도움이 될 캐싱 플러그인을 사용하고 있는지 확인하십시오.

나는 당신이 천천히 경험하고 있기 때문에 당신이 이것을 요구하고 있다고 생각 하나? 속도를 높이기 위해 할 수있는 일이 있다면 호스트에게 물어보고 PHP 구성이 올바르게 설정되어 있는지 확인하십시오.

0
rfair404

보통 WordPress 용 플러그인을 너무 많이 설치하지 않고 대신 주 작업을 수행하는 테마 프레임 워크를 사용하려고합니다. 모든 플러그인이 리소스 소비를 합산하는 것은 사실입니다.

모든 플러그 접속 식은 무언가를 할 것이다, 그들은 초기화해야한다, 그래서 당신의 웹 사이트를위한 페이지가 요구 될 때 몇몇 부호를 달릴 것이다, 짐을 단단하게하는 admin WordPress위원회에 이렇게 많은 연결을 언급하지 않기 위하여.

어쩌면 2-3k 페이지 뷰를 가진 공유 호스팅에서이를 알지 못할 수도 있지만 3k 명의 활성 사용자가있는 웹 사이트에서 매일 10 페이지를 요청하면 문제가 발생할 수 있습니다.

0
Lucian

당신은 사이트를 느리게 할 2 가지, 즉 파일에서 서버 (들), PHP, 2에 대한 브라우징이 코드를 읽는 방법을보고 있습니다.

코드가 엉성한 경우 브라우저는 화면에 표시하기 전에 코드를 두 번 또는 세 번 검사합니다. 많은 데이터베이스 및 서버 요청이있는 많은 플러그인을 사용하는 경우 시간이 걸릴 수 있으며 올바르게 작성되지 않은 경우 추가 시간이 나빠질 수있는 요청과 충돌하거나 사이트가로드되지 않고 /거나 오류 메시지.

rFair404는 서버 요청에 도움이되는 캐싱 프로그램을 언급하고 일부는 html 코드를 압축 할 것이고 이는 저에게 상기시켜줍니다. 일부 CSS 페이지를 압축해야합니다.

0
javajoba

그 대답은 둘 다라고 .


더 많은 플러그인 = 더 느림

스타일 시트 및/또는 자바 스크립트 파일을 페이지에 추가하는 모든 플러그인을 사용하면 웹 사이트 속도가 크게 저하됩니다.

웹 사이트의 프론트 엔드에서 뭔가를하기 위해 스타일 시트와 자바 스크립트 파일이 필요하다면 가장 잘 쓰여지는 플러그인조차도 사이트를 망칠 것입니다.

파일 병합

당신이 wordpress 위치를 달리는 경우에, 당신은 너 자신에게 그것을 빚지고있다 :

  • 자바 스크립트 파일을 함께 병합하십시오.
  • 스타일 시트 파일을 적절하게 병합
  • 헤더에서 꼬리말로 자바 스크립트 호출 이동

당신이 wordpress 위치를 달리고 위 사정을 할 수없는 경우에, 당신은 wordpress 위치를 달리고 있지 않아야한다 ... 또는 적어도 당신은 당신이 플러그 접속 식을 더 적재 할 때 당신의 위치가 감속 할 때 넋두리하면 안된다.

또한, WordPress 사이트를 운영하는 사람은 다음을 수행하는 방법을 알아야합니다.

  • CSS 및 자바 스크립트 파일 축소
  • 서버 압축 사용
  • 만료 헤더가 스크립트 및 스타일 시트와 함께 제공되는지 확인하십시오.

잘못 작성된 플러그인 = 느린 속도

플러그인 작성자가 웹 사이트를 정말로 느리게 만드는 주요 방법은 다음과 같습니다.

  1. 한 페이지에 여러 스크립트 또는 스타일 시트로드 - 위 참조
  2. 데이터베이스를 부적절하게 사용하면 작성된 쿼리, 쿼리 수정 등이 웹 사이트에 심각한 영향을 미칠 수 있습니다. 가능한 경우 결과를 캐시하지 못하면 작업 속도가 느려질 수 있습니다. 대부분의 사람들은 데이터베이스 개발 및 관리를 망칩니다. 그런 사람들이 데이터베이스를 사용할 때 문제가 발생합니다.
  3. 부적절한 wp cron 사용 - 각 사용자 요청에 대한 지속적인 cron 작업은 서버를 무릎 꿇게합니다.

세미 - 무한 루프, 정규 표현식의 톤 등 불필요한 코드를 작성하는 것의 부족은 대부분의 워드 프레스가 얼마나 큰지를 고려할 때 많은 영향을 미치지 않습니다. 1 % 추가 처리 시간을 추가하는 것은 그리 많지 않습니다.


천천히 느린 작업

잘 쓰여지더라도 느려지는 것들이 있습니다 :

  1. 타사 서비스 사용 - 사용자에 대한 사용자의 응답이 타사의 응답에 의존 할 때마다 사이트 속도가 훨씬 느려집니다.

물론 제대로 수행되면 (캐시 ​​된 결과, 가능하면 백그라운드 프로세스로 처리됩니다.) 많은 제 3 자 서비스가 많은 문제없이 사용될 수 있습니다.

0
Privateer