You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Sileshi Kassa (JIRA)" <ji...@apache.org> on 2006/10/27 05:20:02 UTC
[jira] Created: (AMQ-1008) Stomp support for implict creation of
temporary destinations: saves server side resources
Stomp support for implict creation of temporary destinations: saves server side resources
-----------------------------------------------------------------------------------------
Key: AMQ-1008
URL: https://issues.apache.org/activemq/browse/AMQ-1008
Project: ActiveMQ
Issue Type: Improvement
Components: Broker
Environment: N/A
Reporter: Sileshi Kassa
It is quite simple to extend the existing Stomp destination header field and AMQ Stomp
server to support a prefix for temporary queue and topic as follows:
destination: /tempqueue/a
/temptopic/b
This does not change the protocol since destination is opaque
from the protocol point of view. The semantics of it is left
to Stomp server implementation.
This will save a lot of server resources from being wasted.
For instance with RPC over Stomp implementation, it takes
two queues: request queue and reply queue.
A reply queue should be a temp queue in this case.
I have discussed this on both Stomp dev and AMQ user forums.
Here is the link:
http://www.nabble.com/Implicit-AMQ-Temp-Queue-and-Topic-creation-support-tf2516578.html
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (AMQ-1008) Stomp support for implict creation of
temporary destinations: saves server side resources
Posted by "Sileshi Kassa (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/activemq/browse/AMQ-1008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_37931 ]
Sileshi Kassa commented on AMQ-1008:
------------------------------------
James.Strachan wrote:
> As for the temporary queue/topic, the JMS[1] spec states that temporary
> queues/topics may be used by any session using that connection. This seems
>> sensible and should probably be a mechanism embraced by STOMP. If connecting
>> to an ActiveMQ server, then the destinations /temporary/queue/foo, or
>> /queue/temp/foo would be nice.
>Yeah. I guess the decision needs to be, does the client make up some
>name and have the broker auto-create it, or should there be an
>explicit CREATE/DESTROY type verbs on the STOMP protocol.
An explicit client request to CREATE temporary queue/topic where the server
creates and return via CREATED frame would have been be ideal. One possible
server side implementation could associate the temp queue/topic to the session,
and automatically deletes it when session ends which is consistent JMS side behavior.
I suggested this a while back but the consensus was not to change the stomp protocol, rather
extend it for ActiveMQ.
Thus, I have proposed a simple temp queue/topic naming convention
which doesn't require the Stomp protocol change or extension:
destination: /tempqueue/Foo
or
destination: /temptopic/Bar
This temp destination must be globally unique name as in the case of JMS side.
And the server somehow associates the temp queue/topic to the session, and
deletes it without a client request when the session ends.
Mostly a temp queue is created so that it can be used for replyTo.
>I guess the simplest thing that could possibly work is just to use a
>naming convention; that /temporary/queue/* (or /tempqueue/*) indicates
>temporary queues. Though the complication then arises that a client
>may wish to specify the reply-to destination (more here
>http://incubator.apache.org/activemq/stomp.html) - which if there was
>a client side alias (/tempqueue/foo) that would need to get switched
>to the globally unique queue name.
I prefer /tempqueue/Foo, /temptopic/Bar type convention which quite
similar to regular queue/topic: /queue/Foo, /topic/Bar
>I'm not sure how useful the SESSION is; as folks can use a transaction
>for a session?
A stomp connection can be viewed as an implicit session.
Having multiple session within a stomp connection may
introduce complexity
-Sileshi
> Stomp support for implict creation of temporary destinations: saves server side resources
> -----------------------------------------------------------------------------------------
>
> Key: AMQ-1008
> URL: https://issues.apache.org/activemq/browse/AMQ-1008
> Project: ActiveMQ
> Issue Type: Improvement
> Components: Broker
> Environment: N/A
> Reporter: Sileshi Kassa
>
> It is quite simple to extend the existing Stomp destination header field and AMQ Stomp
> server to support a prefix for temporary queue and topic as follows:
> destination: /tempqueue/a
> /temptopic/b
> This does not change the protocol since destination is opaque
> from the protocol point of view. The semantics of it is left
> to Stomp server implementation.
> This will save a lot of server resources from being wasted.
> For instance with RPC over Stomp implementation, it takes
> two queues: request queue and reply queue.
> A reply queue should be a temp queue in this case.
> I have discussed this on both Stomp dev and AMQ user forums.
> Here is the link:
> http://www.nabble.com/Implicit-AMQ-Temp-Queue-and-Topic-creation-support-tf2516578.html
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira