OCI Queue 常见问题解答

常见问题解答主题

概述

什么是 Oracle Cloud Infrastructure (OCI) Queue?

OCI Queue 具备高可用、高吞吐量特性,每秒能够摄取数百万条消息。用户可以发布、使用和删除 Queue 中的消息,也可以更新消息的可见性。

Queue 使用什么协议进行通信?

OCI Queue 支持 RESTful API、SDK 以及 STOMP

什么时候可以使用严格保序(FIFO 队列)特性?

Queue 支持标准队列(尽力排序)。FIFO 队列(严格保序)是未来会推出的一项功能,目前还没有确切的时间。如果需要此特性,您可以提出支持请求或与 OCI 客户经理沟通。



服务限额

OCI Queue 提供哪种 SLA?

OCI Queue SLA 规定正常运行时间为 99.9%,消息最长保留期为 7 天。

如何增加租户限额?

您可以提出支持请求来提高某些限额。

使用 OCI Queue API 是否有限额?

超过以下阈值时将激活节流机制:

参数 客户软性限额
吞吐量节流限额 每个队列支持 10MB/秒的数据传入和传出(软性)


开发

如何搭建集成开发环境 (IDE) 来开始使用 Queue 服务?

您可以在 Oracle DevRel GitHub 资料库中查找示例代码,或按以下步骤配置 IDE。

  • 1. 创建一个新项目。
  • 2. 如果您使用的是 Maven 工具,可以在 pom.xml 中引用我们的 SDK。



  com.oracle.oci.sdk
  oci-java-sdk-queue
  3.2.0

    

如何使用 SDK?

访问面向 OCI Queue 的公共 GitHub 资料库,查看 SDK 功能演示示例。

在哪里可以找到队列所需的完整 API 列表?

我们提供以下 API:

队列管理 API

  • ListQueues
  • CreateQueue
  • GetQueue
  • UpdateQueue
  • DeleteQueue
  • ChangeCompartment
  • PurgeQueue
  • GetWorkRequest
  • ListWorkRequest
  • ListWorkRequestLogs
  • ListWorkRequestErrors

消息传送 API

  • PutMessages
  • GetMessages
  • DeleteMessage(s)
  • UpdateMessage(s)
  • GetStats

在哪里可以找到 API 错误列表?

有关 API 错误的详细信息,请参阅文档



执行

是否可以在清除消息时将消息推送到队列?

清除调用最终是一致的;这意味着它将删除在清除调用之前发布的所有消息,但也可能删除队列处于清除状态(更严格地说,是具有清除生命周期状态详细信息的更新状态)时发布的一些消息。清除操作期间不会阻止 PutMessages 调用,但可能会删除其消息。

可以保证的是,被清除的消息不会被 GetMessages 调用返回,也不会影响队列统计信息。不过,消息删除过程是异步的,可能要占用一些时间。在此期间,如果您有有效收据,则可以成功对被清除的消息执行更新和删除操作。

OCI Queue 是否支持在处理后自动删除消息?

不支持,客户端需要在完成处理后调用 DeleteMessage API 删除消息。否则,消息将在可见性超时后返回队列,并在后续的 Get 请求期间返回。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. Oracle专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。