PyPy is a fast, compliant alternative implementation of the Python language
파이파이(pypy)는 파이썬으로 만들어진 파이썬 구현이다.
기존의 파이썬 구현인 CPython보다 매우 빠른 속도를 보인다.
https://mirror.enha.kr/wiki/PyPy
자세한 내용은 위의 URL을 통하여 확인할 수 있다.
당연하게도 pypy를 사용하기 위해서는 pypy를 먼저 다운로드 해야한다.
위의 URL을 통해 다운로드 받을 수 있다. pypy는 일반적으로 언급되는 설치라는 과정을 거치지 않고 바로 실행시킬 수 있다. 그러나 약간의 손을 봐서 일반 python처럼 사용할 수 있도록 설정해줄 것들이 있다.
다운받은 압축 파일의 압축을 풀고 열면, bin이란 디렉토리 안에 pypy를 볼 수 있다.
위의 사진에는 다른 것들도 나와있지만 초기엔 pypy파일 외에 pip등등 다른 것들은 없다.
즉 pypy하나만 있을 것이다.
$ ./pypy
라고 쳐서 terminal에서 실행 시켜보라.
이후 이것을 global하게 접근하기 위해서(즉 아무곳에서나 terminal명령어로 실행시키기 위해서) 2가지 방법을 우리는 사용 할 수 있다.
첫번째 방법은,
해당 폴더의 pypy를 환경변수로 등록하여 사용하는 방법.
두번째 방법은
pypy의 바로가기(Symbolic link)를 만들어 직접 os의 명령 프로그램들이 모인 bin(/usr/local/bin)에 등록하여 해당 파일에 접근 할 수 있도록 하는 방법이 있다.
위의 디렉토리에 보이는 pypy를 바로 bin에 넣지 않는 이유는, pypy를이동할 시 pypy가 실행할 때 필요로 하는 라이브러리나 모듈을 pypy가 어디있는지 몰라 찾을 수 없게 되어버리기 때문이다.
환경변수를 등록하는 것 보다는 바로가기로 처리하는 게 더 간편하고 정리가 쉬워 필자는 두번째 방법으로 처리했다.
$ cd /usr/local/bin
$ sudo ln -s ~/pypy-2.3.1-osx64/bin/pypy pypy
먼저 /usr/local/bin로 디렉토리를 바꾼다. 그곳에서 위 명령어를 통하여 바로가기를 만든다. 이때 주의할 점은 ~/pypy-2.3.1-osx64/bin/pypy에 자신의 컴퓨터의 pypy가 있는 경로를 적어야 한다는 것! 그대로 따라치면 안된다.
이렇게 설치하고 나면,
$ pypy app.py
라는 명령어로 파이썬 코드를 실행시킬 수 있다. 엄청난 속도를 보여준다. 실제로 웹 크롤러를 pypy로 돌렸더니 체감되는 속도가 훨씬 높아졌다.
그러나 이것으로 만족하면 안된다. pip와 easy_install이 필요하다.
$ curl -O http://python-distribute.org/distribute_setup.py
$ curl -O https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py
$ pypy distribute_setup.py
$ pypy get-pip.py
라고 친다. 디렉토리는 어디라도 좋다. 다 하고 나서 실제 pypy디렉토리(바로가기가 있는 곳 말고 진짜 pypy가 있는 곳; 예를들면 ~/pypy-2.3.1-osx64/bin)으로 가면, 제일 위의 사진 처럼 pip와 easy_install이 설치되어 있을 것이다. 아까와 똑같이 /usr/local/bin으로 간다. 그리고 바로가기를 생성한다. 이때 원래(컴퓨터에 이미 설치되어있는)의 python의 pip와 easy_install과 구분하기 위해 pypy-pip, pypy-easy_install이라고 지정한다.
$ cd /usr/local/bin
$ sudo ln -s ~/pypy-2.3.1-osx64/bin/pip pypy-pip
$ sudo ln -s ~/pypy-2.3.1-osx64/bin/easy_install pypy-easy_install
마찬가지로 자신의 컴퓨터에 있는 경로를 ~/pypy-2.3.1-osx64/bin/easy_install여기에 적어야 한다!
원래의 python과 100%호환된다. 뿐만 아니라 모든 것이 동일하게 지원되고, 속도는 빠르다!
$ python app.py
$ pypy app.py
위의 명령어(python)를 아래(pypy)로만 바꾸면 된다.
'Develop' 카테고리의 다른 글
nodejs로 Azure(애저) 클라우드 알림 허브 푸시알림 보내기 (0) | 2015.05.20 |
---|---|
우분투 시작시 자동으로 특정 명령 실행하기. (0) | 2015.03.17 |
도커란 무엇인가 / Docker 컨테이너 / Docker 이미지 / LXC / 가상화 (0) | 2015.03.09 |
브라우저 위치 정보 받아오기 / HTML5 Geolocation API (0) | 2015.01.03 |
워드프레스 설치 준비하기 - 우분투와 MariaDB, Apache, PHP와 함께. (0) | 2014.12.31 |
Pymongo tutorial (파이몽고 사용하기) / pymongo 번역 (0) | 2014.10.29 |
MongoDB(몽고 디비) 특징 공부하기 / 몽고 DB란 무엇인가? (0) | 2014.10.20 |
CSS GENERATOR들 모음 / CSS Maker들 모음(border-radius,text-shadow,font-face,box-sizing,transition,transform,filter,960 grid system) (1) | 2014.03.18 |
웹 디자인, 웹 개발시에 유용한 툴(useful tools) 모음 (색 배합,번역글 모음,무료 벡터 소스,무료 이미지,ICON,favicon,png to icon,랜덤 유저 생성) (0) | 2014.03.17 |
CSS의 box-sizing : content-box와 border-box - padding과 border와 width (0) | 2014.03.02 |