> > Based on the above discussion, I guess we need to change the the existing > Stratos messaging model to support the Pub/Sub model and MQTT protocol. >
I think this statement is not correct, currently we use Pub/Sub model in Stratos messaging system. AFAIU we are looking at two concerns in this discussion: 1. Using hierarchical topics to avoid using headers. 2. Moving to MQTT from AMQP Just to be clear, point 1 and point 2 are two different things, we might not need to move to MQTT to support point 1. +1 for Paul's suggestions to look at MQTT. It seems to be a very light weight messaging protocol compared to AMQP [1] however I can see following limitations: 1. Unreliable (however can make use of TCP guaranteed delivery and ordering) [1], [2] 2. Less support for security (SSL can be used, has username/password support in v3.1 [3]) 3. No support for queues (by design, might not be a problem for us now) On high level, MQTT has been designed for resource-constrained devices and low bandwidth, high latency networks. [1] http://blogs.vmware.com/vfabric/2013/02/choosing-your-messaging-protocol-amqp-mqtt-or-stomp.html [2] http://stackoverflow.com/questions/10462297/mqtt-not-reliable-delivery-instead-of-tcp [3] http://mqtt.org/wiki/doku.php/questions?s[]=delivery#qdoes_mqtt_support_security Thanks -- Imesh Gunaratne Technical Lead, WSO2 Committer & PMC Member, Apache Stratos