You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@rocketmq.apache.org by Kasthuriraajan Ratnasingam <ka...@gmail.com> on 2018/06/03 02:26:17 UTC

Re: [GSoC][ROCKETMQ-379][Support AMQP protocol for RocketMQ] Weekly meeting

Hi all ,

I have tried a sample with RabbitMQ AMQP client and WSO2 message
broker(Both uses AMQP 0.9.1).

 According to that ,I have figure out the AMQP messages contain the
following message properties:

   - Exchange
   - Routing key
   - Basic Properties
   - Body

Following are the attributes that the basic properties may contain:

   - content type
   - content encoding
   - headers
   - delivery mode
   - priority
   - correlation id
   - reply to
   - expiration
   - message Id
   - time stamp
   - type
   - user ID
   - appId
   - cluster Id

In our Rocket MQ messages we have used the following properties for the
messages mainly:

   - messageId
   - message Key

So we can map the messages as following:

We can use the tags for the purpose of exchanges.

What do you think about it? Your suggestions are warmly welcome.

After we finalize the mapping we can scope the implementation of Exchange
types in details.

I'm waiting for your comment.

Thank you.

Best regards,
R.Kasthuriraajan.
​


On Wed, May 30, 2018 at 11:13 AM, Kasthuriraajan Ratnasingam <
kasthuriraajan94@gmail.com> wrote:

>
> Hi Von,
>
>
>> Thanks for your conclusion, we could use the email to discuss the
>> question more frequently :-)
>>
>
> Definitely! We can.
>
> IMO, we could scope the implementation of the exchange type for AMQP
>> firstly, direct and topic may be a better priority.
>
> Yes, because both of them have a wide use case. So we can choose those two.
>
>
>> Besides, I am wonder how to maintain the mapping relationship between
>> AMQP and RocketMQ Message Model in your design, could you make it clear for
>> me?
>>
> Yes I'll explain my thoughts via diagram , in detail very soon.
>
> Anyway,  I think design is the most significant, we must think again
>> before we begin to code.
>>
> With in two days I'll share the whole project design of mine in this
> thread.Currently I am working on it.
>
>
> Thanks.
>
> Best regards,
> R.Kasthuriraajan.
>
> --
> R.Kasthuriraajan.
> Undergraduate student | Department of Computer Science,
> Faculty of Science | University of Jaffna.
>
> LinkedIn: https://www.linkedin.com/in/ratnasingam-
> kasthuriraajan-2a6892121/
> <https://www.linkedin.com/in/ratnasingam-kasthuriraajan-2a6892121/>
> stackoverflow: https://stackoverflow.com/users/8870269/kasthuriraajan?tab=
> profile
> GitHub: https://github.com/kasthuriraajan
> Medium: https://medium.com/@Kasthuriraajan
>
>


-- 
R.Kasthuriraajan.
Undergraduate student | Department of Computer Science,
Faculty of Science | University of Jaffna.

LinkedIn: https://www.linkedin.com/in/ratnasingam-kasthuriraajan-2a6892121/
<https://www.linkedin.com/in/ratnasingam-kasthuriraajan-2a6892121/>
stackoverflow:
https://stackoverflow.com/users/8870269/kasthuriraajan?tab=profile
GitHub: https://github.com/kasthuriraajan
Medium: https://medium.com/@Kasthuriraajan

Re: [GSoC][ROCKETMQ-379][Support AMQP protocol for RocketMQ] Weekly meeting

Posted by Kasthuriraajan Ratnasingam <ka...@gmail.com>.
Hi Von,

Thank you for your valuable guidance. Now I have a clear picture on this.

 I'll update the complete design for exchanges very soon. Simultaneously I
start to code to write a proxy to connect our Rocket MQ broker. Because our
GSoC first evaluation period starts on 11th  June. I have to complete some
portions of the project before that.

Thanks

Best Regards,
R.Kasthuriraajan.

On Mon, Jun 4, 2018 at 12:25 PM, Von Gosling <vo...@apache.org> wrote:

> Hi,
>
>
> RoutingKey are different design with the MessageKey in RocketMQ.
> MessageKey didn’t have the ability of sharding, it is just used for the
> indexing query for your special business case, you can use
> MessageQueueSelector for this purpose in RocketMQ. While some other
> properties in AMQP, you could use MessageConst to map and do some work when
> fill with them.
>
> In consumer, you could use the tag to simulate the exchange semantic.
>
>
> Best Regards,
> Von Gosling
>
> 在 2018年6月3日,10:26,Kasthuriraajan Ratnasingam <ka...@gmail.com>
> 写道:
>
> We can use the tags for the purpose of exchanges.
>
>
>


-- 
R.Kasthuriraajan.
Undergraduate student | Department of Computer Science,
Faculty of Science | University of Jaffna.

LinkedIn: https://www.linkedin.com/in/ratnasingam-kasthuriraajan-2a6892121/
<https://www.linkedin.com/in/ratnasingam-kasthuriraajan-2a6892121/>
stackoverflow:
https://stackoverflow.com/users/8870269/kasthuriraajan?tab=profile
GitHub: https://github.com/kasthuriraajan
Medium: https://medium.com/@Kasthuriraajan

Re: [GSoC][ROCKETMQ-379][Support AMQP protocol for RocketMQ] Weekly meeting

Posted by Von Gosling <vo...@apache.org>.
Hi,


RoutingKey are different design with the MessageKey in RocketMQ. MessageKey didn’t have the ability of sharding, it is just used for the indexing query for your special business case, you can use MessageQueueSelector for this purpose in RocketMQ. While some other properties in AMQP, you could use MessageConst to map and do some work when fill with them.

In consumer, you could use the tag to simulate the exchange semantic.


Best Regards,
Von Gosling

> 在 2018年6月3日,10:26,Kasthuriraajan Ratnasingam <ka...@gmail.com> 写道:
> 
> We can use the tags for the purpose of exchanges.
>