当前位置: 首页 > 软件库 > Web应用开发 > 网站API >

aliyun-ons-ruby-sdk

阿里云 ONS 消息队列服务
授权协议 GPL
开发语言 Ruby
所属分类 Web应用开发、 网站API
软件类型 开源软件
地区 国产
投 递 者 廖君昊
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Ons

阿里云 ONS 消息队列服务 Ruby SDK(非官方版本)

项目依赖

  • Linux/Unix 系统

  • Ruby 2.1.5 或以上版本

  • Boost C++ 程序库

安装步骤

安装 Ruby 程序

$ rvm install 2.1.5

安装 Boost C++ 程序库

$ apt-get install libboost-all-dev

安装 ons

$ gem install ons

使用方式

环境准备

  • 安装 ons rubygems。

  • 代码里涉及到的 TOPIC、PRODUCER_ID、CONSUMER_ID,需要在 MQ 控制台上创建。 Message Tag 可以完全由应用自定义,具体创建过程可参考 申请MQ资源

  • 使用 MQ 服务的应用程序需要部署在阿里云 ECS 上。

部分资料来自 消息队列 > TCP 接入(专业) > C/C++ SDK 环境准备

生产者

producer = Ons::Producer.new('<ONS_ACCESS_KEY>', '<ONS_SECRET_KEY>', '<ONS_PRODUCER_ID>') 
# 资源准备 producer.start
# 在 topic <ONS_TOPIC> 下发送消息 producer.send_message('<ONS_TOPIC>', 'tag', 'Hello, World!')
# 必须在程序退出前调用 shutdown 方法释放相关资源,否则可能出现栈错误 producer.shutdown

更多用法,请参考 {file:samples/producer.rb} 及 API 文档

消费者

consumer = Ons::Consumer.new('<ONS_ACCESS_KEY>', '<ONS_SECRET_KEY>', '<ONS_CONSUMER_ID>') 
# 订阅 topic <ONS_TOPIC> 下的所有消息 
# 注意,当消息达到时,会调用下述函数,此函数会被调度到单独线程中执行 consumer.subscribe('<ONS_TOPIC>', '*') { |message| p message } 
# 资源准备 consumer.start 
# 等待消息到达 sleep 32 
# 必须在程序退出前调用 shutdown 方法释放相关资源,否则可能出现栈错误 consumer.shutdown

更多用法,请参考 {file:samples/consumer.rb} 及 API 文档

  • Python 文档 https://www.alibabacloud.com/help/zh/doc-detail/407684.htm pip install -U aliyun-log-python-sdk import time from aliyun.log import * endpoint = "cn-beijing-intranet.log.aliyuncs.com" access

 相关资料
  • 3-3一面 65min 自我介绍 项目&八股 为什么选Zookeeper作为中心 Zookeeper的理解 怎么保障强一致性 主节点选举? 什么因素?权重? redis为什么高性能? redis的数据类型 String的优化 达梦 MySQL对比 MySQL的索引优化 Redis 数据库一致性 线程并发如何考虑数据一致性 数据库事务的实现 HTTP HTTPS 原理 NIO BIO AIO 为什么

  • 开发文档 API文档 基础类 输入、输出和异常说明 文件(Object)相关操作 存储空间(Bucket)相关操作 易用性接口 迭代器 断点续传(上传、下载) FileObject适配器 索引 模块索引 搜索页面

  • 为什么已经拥有了共享内存时需要消息队列呢? 这将是多种原因,让我们将其分解为多个点来简化 - 据了解,一旦消息被一个进程接收到,它将不再可用于任何其他进程。 而在共享内存中,数据可供多个进程访问。 如果想使用小信息格式进行通信。 当多个进程同时进行通信时,共享内存数据需要同步保护。 使用共享内存的写入和读取频率很高,那么实现功能将会非常复杂。 在这种情况下不值得使用。 如果所有的进程不需要访问共享

  • 一、消息模型 点对点 发布/订阅 二、使用场景 异步处理 流量削锋 应用解耦 三、可靠性 发送端的可靠性 接收端的可靠性 参考资料 一、消息模型 点对点 消息生产者向消息队列中发送了一个消息之后,只能被一个消费者消费一次。 发布/订阅 消息生产者向频道发送一个消息之后,多个消费者可以从该频道订阅到这条消息并消费。 发布与订阅模式和观察者模式有以下不同: 观察者模式中,观察者和主题都知道对方的存在;

  • 一个线程会从消息队列中收取消息,另一个线程会定时给消息队列发送普通消息和紧急消息 一个线程会从消息队列中收取消息,另一个线程会定时给消息队列发送普通消息和紧急消息 源码/* * Copyright (c) 2006-2018, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Change Logs: *

  • 消息队列接口 结构体 struct   rt_messagequeue   消息队列控制块 更多...   类型定义 typedef struct rt_messagequeue *  rt_mq_t   消息队列类型指针定义   函数 rt_err_t  rt_mq_init (rt_mq_t mq, const char *name, void *msgpool, rt_size_t msg_