2014년 8월 4일 월요일

Celery 시작하기

분산처리환경, Grid Computing, Message Queue

세가지 개념이 아직 구분이 가질 않습니다. 어린아이가 세상을 다 알지 못하듯이 저 또한 저 세개의 개념을 알지 못하는것이겠습니다.

일단 목표는 정해져 있습니다. 서버에서 마스터 메시지큐 서버를 구축하고 워커를 구축하고 그들의 움직임을 통제하는것입니다.

그것을 위해서 저는 celery를 선택하였습니다. 다른 이유는 없고 python 홈페이지에서 분산컴퓨팅을 위한 패키지라고 설명을 해주었기때문입니다.

일단 설치를 하려고 합니다.

홈페이지 입니다.

http://www.celeryproject.org/

내용을 읽다보니 Broker가 있어야 한다네요 rabbitmq를 설치하라고 합니다.

설치합니다.

http://www.rabbitmq.com/

RabbitMQ를 이용하기 위해서는 erlang을 설치하라고 하네요 .... 올해 초 회사 동료가 공부하자고 해서 책도 사서 읽었던 얼랭이니 ... 설치에는 무리가 없죠 ㅎ

http://www.erlang.org/

역으로 얼랭을 설치하고 rabbitMQ를 설치 후 rabbitMQ에서의 예제인 "Hello world!!" 를 구성합니다.

언어는 파이썬으로 하고

http://www.rabbitmq.com/tutorials/tutorial-one-python.html

rabbitMQ Library인 pika를 이용하기로 합니다.

pika를 설치하는 방법이 여러가지 있다고 하는데 ... pip를 이용한다고 합니다.

예제를 하나 실행하는데도 여정이 깁니다.

https://pypi.python.org/pypi/setuptools

파이썬 링크를 들어가는것 보면 파이썬이 깔려 있어야 하는것 같습니다. 없으시면 파이썬 깔고오세요 ~~~

pip를 깔면 rabbitMQ Tutorial 에서 보이는 pika를 설치할수 있습니다. 현재의 싸이트는 이전 피카버젼을 명시하고 있으므로 피카의 버젼은 그냥 무시하시면 최신버젼이 깔리는것 같습니다.

자 이제 pika를 깔았으면

tutorial을 진행합니다.

내용자체가 tutorial만 보시더라도 알 수 있는 내용이므로 패스

단, 사실 저는 저 tutorial을 성공하기까지 정말 오랜 시간이 걸렸습니다. 아무리 서버를 올려도 에러메시지가 떨어지더라구요... 그래서 에러메시지를 분석한 결과 제가 호스트 네임 부분이 이상하게 들어가고 있다는것을 알았고 그 호스트 네임은 컴퓨터 이름을 이용한다는 사실도 알았습니다. 만일 당신의 컴퓨터이름이 한글이라면 당장 영어로 바꾸세요. 특수문자도 빼시는게 좋겠습니다.

그럼 rabbitMQ를 이용하여 no more faster~~

아 ... Celery 는 가지도 못했네요... 곧가겠죠 ㅎㅎ


댓글 없음:

댓글 쓰기