logo

Composer 속도 향상시키기, 한국 Packagist 미러 사이트

Server Side July 03, 2020

여러 환경의 프로젝트에서 리소스 또는 프레임워크 환경 구축을 위해 php 패키지 매니저인 Composer를 많이 사용하고 있다.

 

Composer를 어떻게든 설치하면 필요한 패키지들을 설치하는데, 근래들어 특정 시간대나 ip대역에서 제대로 Composer를 통한 패키지 설치가 안되는 현상이 발생했다.

에러코드를 보아도 설치중에 문제가 발생한것이 아니라 제가 필요로 하는 패키지의 설치 정보가 제대로 가져올 수 없는 에러였다. 매번 패키지를 설치할 때 마다 로컬에 받아서 설치할 수도 없는 노릇이니 해결책을 찾아보니 Composer는 Packagist 서버를 통해 설치 정보를 가져오게 되는데, 이 서버가 해외에 있다보니 제대로 통신이 안되거나 정보를 가져오지못하면 설치가 진행되지 않고 Timeout이 일어나는 경우가 근근히 있다고 한다.

 

어떻게 해결해야하나 검색을 해보니 보통 대형 프로젝트는 Packagist 미러사이트를 자체적으로 구축해놓아서 거기를 통해 이용한다고하는데, 개인이 그렇게 까지 환경을 구축하는건 배보다 배꼽이 큰경우라고 본다.

다행히 어떤 개발자분이 한국 Packagist 미러사이트를 자체적으로 구축해 개인 서버로 운영하고 계셨다.

 

$ composer config -g repos.packagist composer https://packagist.kr

 

해당 개발자분 말씀으로는 어디까지나 개인이 운영하는 사이트이므로 자체적으로 모니터링은 하고 있지만 서버가 불시적으로 문제를 일으킬 수 있으니 라이브 서버에서는 되도록이면 다른 방안을 통해 사용하기 바란다라고 코멘트를 해주셨다.

 

일단 본인도 프로젝트 환경 구축은 로컬에서 진행하고 라이브 서버에는 업로드를 통해서 서비스하는 방식이므로 해당문제는 발생되지 않을거라 생각해 본인이 쓰는 모든 환경에서 Composer의 Repository를 해당 미러사이트로 변경해놓았다.

 

속도는 정말 끝내준다.

개발자님 감사합니다 충성충성

감사합니다.