간단하게 HHVM 을 워드프레스에 적용하기

§

HHVM 과 php7 중 어느쪽이 더 빠른지, 더 효율적인지에 대한 논란이 끊이지 않고 있어, 이런글을 쓰는 것 자체가 무섭습니다.

Disclaimer: 일단 hackya.com 은 php7 으로 돌아갑니다.

워드프레스 환경에서 제가 알기로는 매우 근소하게나마 php7 이 HHVM 보다 더 빠른걸로 알고 있고 (하지만 거의 차이가 없다고 알고 있습니다), 그래서 제 친구도 HHVM 이 아닌 php7으로 hackya.com 의 서버를 강제 세팅해줬습니다. (ㄱㅅㄲ ㅠㅠㅠ 내가 싫다고, 일 많아진다고 몇번을 말했는데도 php7 을 적용해버렸습니다.)

하지만 HHVM 이 php7 보다 더 유리하다는 주장도 꽤 설득력이 있고, https://kinsta.com/blog/the-definitive-php-7-final-version-hhvm-benchmark/ 특히 워드프레스 관리자 페이지에서는 어떤 benchmark 테스트이건 HHVM 이 php7 보다 월등히 빠르다고 합니다.

워드프레스 관리자 페이지 속도: HHVM 이 더 빠릅니다.
워드프레스 관리자 페이지 속도: HHVM 이 더 빠릅니다. 워드프레스 관리자 페이지 속도: HHVM 이 더 빠릅니다.

하지만 효율성에 있어서 php7이 더 유리하다는 주장도 있고,

http://blog.litespeedtech.com/2015/07/16/php7-vs-hhvm-benchmark-series-1-hello-world/

front-page, 그러니까 방문자가 접속하는 페이지의 경우는 php7이 아주 근소하게나마 HHVM 보다 더 빠르게 로딩되는 결과를 보여주는 benchmark 테스트도 존재합니다.

매우 근소한 차이로 php7 이 조금더 ㅃ릅니다.
매우 근소한 차이로 php7 이 조금더 ㅃ릅니다. 매우 근소한 차이로 php7 이 조금더 빠릅니다.

HHVM 이 되었던 php7 을 선택하던, 분명한 사실은, 이 두개의 환경에서 워드프레스는 매우 빠르게 구동된다는 점 입니다.

저번에 어느 개발자분을 보니, php7 으로 php 버전을 올리고 싶으셔도 올리지 못하고 계시던데, php7 으로 버전업 하기 힘든분들에게 HHVM 을 워드프레스에 매우 쉽게 적용할 수 있는 prepackaged 빌드 제품이 출시되어 이 방식을 소개시켜드리고자 합니다.

Docker 라는 제품인데요, Docker 는 open-source 이고 무료입니다.

https://www.docker.com/

또 개발환경이 Linux 가 아닌 윈도우 라도 Docker 를 설치해서 사용할 수 있습니다.

https://www.docker.com/products/docker-toolbox

짱이죠? ㅋㅋㅋㅋ

Docker 를 설치하신 후, Nginx + HHVM + 워드프레스 (꿈의 조합이죠) 를 단 한줄의 코드로 설치하실 수 있습니다.

이 빌드/조합 (Nginx + HHVM + 워드프레스) 을 친절하게도 Alexander Koko 란 개발자분이 pre-build 해서 이걸 Github 에 올려놨기 때문입니다.

https://github.com/AleksanderKoko/WP_Dock

이 git 을 클론만 하시면 됩니다.

이렇게 git 하시면 되겠죠.

git clone https://github.com/AleksanderKoko/WP_Dock wpdock

그리고 워드프레스 파일은 별도로 wpdock/docker 폴더에 집어 넣으셔야 합니다.

저는 여기까지 해봤습니다.

그리고 docker-compose.yml 에서 links to 를 hhvm 으로 바꿔줘야 한다고 합니다.

docker/nginx/config/upstream.conf 파일에서도 ‘php’ 로 되어 있는걸 ‘hhvm’ 으로 바꿔줘야 하고.

제가 사용할 제품은 아니라서 끝까지 다 설정을 적용해 보지는 않았습니다.

아래 sitepoint 글에 상세한 설정내용이 나와 있습니다.

https://www.sitepoint.com/hhvm-and-wordpress/

비개발자도 따라할 수 있을 정도로 설치와 세팅 방법이 매우 간단해서, 더구나 Docker 가 윈도우에서도 설치가능한 제품이라 소개해드렸습니다.

hackya 는

Attorney, front-end developer, digital media artist, WordPress enthusiast, & a father of 4 wonderful children.

Tags: , , , ,

카테고리: , ,

Ω

4 Comments

  • codei says:

    Docker 에 눈독 들이셨군요 ㅋㅋ
    최근 개발 트랜드가 Docker 로 옮겨가는 움직임이 있습니다.
    [대세 까지는 아니고…]

    이유는 아시다 시피 개발환경으로부터 자유로워 지기 위해서 + 소스 관리 및 배포를 편하게 하기 위해서 입니다.

    Docker는 컨테이너 단위로 움직이기 때문에 가령
    wp_v1 버전 이미지를 구동 하다가 wp_v2 라는 이미지를 만들어서 수정을 하고
    패치를 wp_v1를 빼고 wp_v2 를 넣습니다.
    [찾아보시면 활용 방법이 무궁무진 합니다.]

    네! cd 게임을 이미지 떠서 넣었다 뺏다 하듯이 말이에요.

    • Matthew says:

      유용하게 쓰실 분이 계실 것 같아 잠시 테스트 install 을 해봤습니다. 제가 쓸일은 없구요.

      서버단 설치가 exe 파일을 마우스로 눌러서 자동 실행되는 수준으로 발전하기 전 까지는 제가 제 손으로 직접 서버단을 구축 하는 일은 없을 듯 합니다. ㅋㅋㅋㅋ

      솔직히 설치가 중요한게 아니고 설치 후 오류없이 잘 돌아가야 하는데… 저는 서버쪽은 쳐다보기도 싫어서요….

  • 코딩 says:

    php7하고 hhvm 둘중 어떤것을 쓰는게 장기적으로 좋다고 생각하시나요?
    제가 듣기로 hhvm은 컴파일을 한다고 들었는데 그러면 당연히 php7보다 빨라야 하는거 아닌가요?
    그런데 hhvm이랑 php7하고 속도가 비슷한 이유가 뭔가요?

    • Matthew says:

      hhvm이 컴파일 되어야 쓸수 있는 이유:

      Facebook created hhvm because it wanted to hijack/take over php and bring it into its own camp.

      페북은 php 를 자신들의 나와바리로 접수하기 위해 hhvm 을 만든 것 입니다. php 는 원래 오픈소스 언어인데, 이걸 사유화 해버림으로 해서 웹에서 좀더 큰 영향력을 갖추고 싶었던거죠.

      그러니까 페북 자체 규격을 따르게 하기 위해 컴파일을 하게 한겁니다.

      자스 쪽에서도 동일한 시도를 하고 있는 react.js 라는 제품이 있습니다.

      hhvm이랑 php7하고 속도가 비슷한 이유:

      원래 페북은 주커버그가 동네 아저씨/프리랜서 에게 기존에 나와 있는 대학교내 소셜 서비스를 똑같이 만들어 달라고 의뢰해서 만들어진 서비스 입니다. 자체 기술력이 있는 회사가 아니었습니다. 요즘은 많이 달라지고 있지만, 그래서 원래 기술력이 막장인 회사로 유명합니다. 그런 페북에서 뭘 바라십니까? ㅋㅋㅋ

Leave a Reply

Your email address will not be published. Required fields are marked *