2012. 9. 10. 13:37
Protocols
모바일 폰에서 Push 통신을 하기 위한 방법에는 C2DM, MQTT, Node.js등이 존재한다. 여기서 MQTT를 예전 프로젝트에서 진행해 보았는데, 참조하자. 시간이 허락된다면 C버전으로 되어 있는 MQTT Broker 서버를 Java 버전으로 개발해서 OSS(Open Source Software)로 공개하고 싶다. 자 그럼 MQTT의 세상속으로 빠져보아요~~~
MQ Telemetry Transport
MQTT is a machine-to-machine (M2M)/"Internet of Things" connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium.
MQTT에 대해 이해하기
MQTT 소프트웨어 참조 방법
- MQTT Software 목록 : http://mqtt.org/software
- MQTT 서버(Broker) : http://mosquitto.org/ 모스퀴토를 다운받아 Linux 에 설치한다.
- MQTT 클라이언트 : http://www.eclipse.org/paho/다양한 언어로 되어 있고, Java는 Paho를 사용함. https://github.com/ChrisMcKee/MeQanTT 요기에 Netty 기반으로 Client 구성한 것도 있음
MQTT Broker Java 버전을 만들기 위해한 스터디
- 스팩 연구 : http://mqtt.org/documentation우선 MQTT Specification (PDF)를 탐독하고 연구한다. QoS(Quality Of Service) 0/1/2 레벨 체크
- 자바버전 오픈소스 연구 : http://code.google.com/p/moquette-mqtt/ 이놈인 MINA로 네트워크를, 자료구조로는 LMAX를 사용하려 했다. (JDK1.5 이상) - QoS 2 아직안되어 있음. 구글코드에서 source-browser를 통해서 진행중인 소스를 볼 수 있다.
- 안드로이드쪽에서 구현한 자세한 설명글 : http://tokudu.com/2010/how-to-implement-push-notifications-for-android/
MQTT Prototyping 해보기
- 기존소스 돌려보기 : https://github.com/tokudu/AndroidPushNotificationsDemo 에 안드로이드 데모 소스가 있네요. http://stackoverflow.com/questions/9562316/basic-steps-for-using-mqtt-in-android 해당 순서로 돌려 보아도 됨
- 기존 자바 오픈소스 서버 돌려보기
- 최소한의 스팩 작성후 개발 요이 땡~~~
'Protocols' 카테고리의 다른 글
Advanced Message Queueing Protocol (AMQP) 란 무엇인가 (0) | 2012.11.28 |
---|---|
MQTT 사용하기 - 1 (1) | 2012.09.11 |