最近在做软件插件的更新服务,其中涉及到客户端和服务端通讯,采取服务端推送的形式进行更新数据包的推送。
经过商讨后采取TCP通讯,由于服务端是JAVA的,客户端是C++。
一番查找学习后,绝对用ACTIVEMQ: http://stomp.github.io/implementations.html#Clients
在http://wenku.baidu.com/view/5eb31ea1284ac850ad024271.html找到了配置方法了,依葫芦画瓢,总算是把自带的例子跑起来了,坑爹还是觉得复杂(依赖太复杂编译太花时间),后来又用了比较简单的libstomp,libstomp是个开源的C库,比ACTIVEMQ简单的不止一点点,API也少,就是要以来APR,不过很简单就搞定了,跑起了TEST,http://activemq.apache.org/apollo/documentation/stomp-manual.html#Using_the_STOMP_Protocol,服务端不是我搭的不会JAVA,服务端最后用的是APOLLO(注意要支持STOMP),配置好是有个网页的界面,在TEST中配置好,LOCALHOST:PORT,就能通过TEST连接到服务端了,连接成功DEBUG会返回CONNECTED,可以进行SEND MESSAGE(PTP)的队列报文传输,目前服务端的同事还在进行推送的研究。
需要注意的是在配置TEST的时候导入的库