创建或更新消息队列

作用

创建或更新消息队列。队列是 JMS 应用程序可在其上发送和接收消息的对象。

URI

使用具有以下 IBM® IoT MessageSight 配置 URI 的 IBM IoT MessageSight REST API POST 方法:

http://<admin-endpoint-IP:Port>/ima/v1/configuration/

对象配置数据

使用以下模式在 POST 方法的有效内容中提供 Queue 对象的配置数据。Content-type 设置为 application/json

{    
  "Queue": {
    "<NameOfQueue>": {
      "Description": "string",
      "AllowSend": true|false,
      "ConcurrentConsumers": true|false,
      "MaxMessages": integer
     } 
   }
}
其中:
NameOfQueue
这是必需属性。
指定队列的名称。
名称不得包含开头空格或结尾空格,并不能包含控制字符、逗号、双引号、反斜杠或等号。第一个字符不得是数字或以下任意特殊字符:
! # $ % & ' ( ) * + - . / : ; < > ? @
该名称不得与其他队列相同。
Description
指定队列的描述。
如果您不需要描述,请省略 "Description":"description"
AllowSend=true|false
指定 JMS 应用程序是否可以向队列发送消息。 这不会使应用程序停止从队列接收消息。
缺省值为 true。
ConcurrentConsumers=true|false
指定是否允许多个使用程序同时使用队列。
缺省值为 true。
MaxMessages
指定可放在队列上的最大消息数。该值仅作为指导原则,而不是绝对限制。如果系统在运行时承受了压力,那么队列中的缓冲消息数可能会比 MaxMessages 值略高。
值可以是范围 1-20000000 之间的任意数字。
缺省值为 5000。

用法说明

  • 必须按照所示情况使用首字母大写和双引号。

示例

以下示例演示了如何使用 cURL 来创建名为 testQ 的队列。该队列对 AllowSendConcurrentConsumers 使用缺省值,并将 MaxMessages 设置为 1000:

curl -X POST\
   -H 'Content-Type: application/json' \
   -d '{
     "Queue": {
	"testQ": {
	"MaxMessages": 1000
      }
     }
    }
  ' \
http://127.0.0.1:9089/ima/v1/configuration/
以下示例显示了对 POST 方法的响应示例。
{        
  "Version": "v1",
  "Code": "CWLNA6011",
  "Message": "The requested configuration change has completed successfully."
}



反馈

时间戳记图标 最近一次更新时间: 2017 年 9 月 28 日
http://pic.dhe.ibm.com/infocenter/ism/v1r0m0/com.ibm.ism.doc/Reference/QueueCmd/cmd_create_update_queue.html