2016-05-20 12 views
2

rabbitmq Version 3.6.1 Ich weiß nicht, wie man in Rabbitmq mit Erlang-Code eine Prioritätswarteschlange erstellt.wie priority queue in rabbitmq zu verwenden?

Mein Code ist unten:

{ok, Connection} = 
    amqp_connection:start(#amqp_params_network{host = "localhost"}), 
{ok, Channel} = amqp_connection:open_channel(Connection), 

amqp_channel:call(Channel, 
        #'queue.declare'{queue = <<"my-priority-queue">>, passive = true, 
            arguments = [{<<"x-max-priority">>, 10}]}). 
+0

Eine Ausnahme ist aufgetreten, wenn dieser Code lief, hieß es ** Ausnahme Ausfahrt: {shutdown, {gen_server, anruf, [<0.56.0>, {Aufruf, { 'queue.declare', 0, <<“ Meine-Priorität-Warteschlange ">>, ture, false, false, false, false, [{" "x-max-priority" >>, 10}]}, nicht, <0.33.0> } ...... .... ]}} –

Antwort

0

argumnets sind AMQP-Typ-Tabelle und ihre Einträge haben einen Typ in Erlang API angegeben haben. Versuchen

arguments = [{<<"x-max-priority">>, long, 10}] 

Andere handliche Typen sind longstr, timestamp, array ([{Type, Value}]), table ([{Key, Type, value}]) und so weiter.

+0

danke, und Sie haben Recht. –

+0

@JackLiu Also können Sie dann antworten und antworten. –