问题标签 [rabbitmq-c]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 如何从柯南食谱中的要求中获取正确的值以用作 CMake 参数?
我正在编写为rabbitmq-c库创建包的方法。当检查其cmake脚本中的enable_ssl_support选项时,它需要OpenSSL库才能构建。
如提供的屏幕路径所示,需要libeay.lib和ssleay.lib文件的调试和发布版本。
在我conanfile.py
的 forrabbitmq-c
库中,我有以下描述依赖关系的代码。
如何从所需的OpenSSL包中获取正确的值以在RabbitMQ-C配方的CMake配置选项中设置它们?
OpenSSL/1.0.2l@bobeff/stable
可以使用不同的设置和选项构建包。在构建RabbitMQ-C时如何选择使用哪个?例如,如何选择是使用静态版本还是动态版本的OpenSSL来链接RabbitMQ-C dll文件?
rabbitmq - 使用 RabbitMQ 发送图像
我想使用 RabbitMQ 将图像从客户端传输到服务器。然而,无论我读到什么,我都明白 RabbitMQ 只能传输文本流。那么如何传输图像呢?
c - 无法通过 RabbitMQ C 主机发送图像
我正在尝试通过 RabbitMQ C master 发送图像,方法是将其二进制数据用作消息,然后将其传输并将其复制到另一个图像文件中。我的代码如下:
客户/发件人:
服务器/接收器:
amqp_wrapper_library.c
然而,image2 并没有被重建。我检查了图像大小,两个图像的大小不匹配。这里有什么问题?
c - 消息在 RabbitMQ C master 中丢失
我正在使用 alanxz 的 RabbitMQ C master。链接如下: https ://github.com/alanxz/rabbitmq-c
在 amqp_sendstring.c 和 amqp_listen.c 示例中,当我关闭 amqp_listen.c 并继续使用 amqp_sendstring.c 发送字符串时,消息会丢失。所以当我重新启动 amqp_listen.c 时,它没有收到消息。我希望 amqp_listen.c 在前者处于非活动状态时接收 amqp_sendstring.c 发送的消息。我该怎么办?
amqp_sendstring.c:
amqp_listen.c:
请建议我如何以正确的顺序检索丢失的消息。
c++ - 编译 c++ amqp-cpp 演示程序 err, make err
我想用 amqpcpp CopernicaMarketingSoftware/AMQP-CPP编写一个测试程序。但是编译器(g++)抱怨:
g++
版本是7.3.0,系统是,ubuntu16.04
版本amqpcpp
是3.1.0。
我的代码如下,有 3 个文件rabbitmq_handler.h
,rabbitmq_handler.cpp
和main.cc
.
rabbitmq_handler.h
rabbitmq_handler.cpp
主文件
c++ - rabbitmq-c客户端的链接错误
我想实现一个小型 c++ 客户端,它连接到我的本地 RabbitMQ 服务器。
该应用程序使用 CMakeList 配置如下:
生成后 CMake-Gui 的输出:
我不明白为什么 Rabbitmqc 库没有正确链接。输入${Rabbitmqc_LIBRARY}
不够TARGET_LINK_LIBRARIES
吗?
如果我编译我的客户端,那么我会收到以下错误:
测试客户端.cxx
感谢您的任何建议!
c++ - 如何从rabbitmq的库中的消息中读取reply_to - amqpcpp?
我正在尝试从消息中读取 reply_to 参数,但没有成功。我正在为消息队列服务器 RabbitMQ https://github.com/akalend/amqpcpp使用 rabbitcpp C++ 库
并且m->getHeader("reply_to")
是空的。
ssl - 何时/为什么需要在 TLS 协商中使用 CACert?
我试图了解用于配置 TLS 的参数(特别是针对 rabbitmq,但我的问题可能更笼统)。
有 4 个主要实体需要考虑:
密钥 - 对等方用于解密发送给它的已使用其公钥加密的消息的私钥。
Cert - 包含对等方公钥的证书它还包含一些识别细节,如主机名、组织等。其中许多是可选的。证书可以是未签名的(如果有的话很少?)、自签名或由证书颁发机构签名。
CACert - 对等方信任的 CA 证书,可用于解密和验证签名证书的签名。
CA 密钥 - 用于签署证书的 CA 的私钥。
这些映射到配置设置,包括:
enablePeerVerification - 如果为 true,则对等方尝试通过检查证书是否真的由 CA 签名来验证服务器是否是它所说的身份(同样沿着信任链向上直到它到达它信任的 CA,因为它在它的本地 CA 信任库)。将此设置为 false 是一个坏主意,因为有人可能会冒充对等方。(在 go 中,此选项称为 InsecureSkipVerify 作为警告)如果证书是自签名的,则无法进行对等验证。此选项允许您自行承担风险(例如在开发期间)使用对等方的自签名证书。
Key - 用于解密的私钥
Cert - 用于加密(和握手)
CACert - 签署“Cert”证书的 CA 的证书
为什么有 CACert 的配置设置?
如果证书由 CA 签名,则它已经包含足够的信息来定位 CA(例如域名)。CACert 的用途是什么,是否或何时在 TLS 协商期间发送?这是否只是为了节省直接前往 CA 的便利?如果 CACert 不匹配或指向您的信任库中的一个,您仍然必须执行此操作。
我指的是服务器的rabbitmq.config中的“cacert”和C API(rabbitmq-c)中的amqp_ssl_socket_set_cacert()。
我想检查一下我的理解是否正确(https://xkcd.com/386/)
rabbitmq - amqp_basic_qos 没有任何效果
我正在尝试使用 librabbitmq 编写一个简单的消费者。它正在工作,但是当我执行 amqp_basic_consume 时,它会消耗整个队列。我想要的是它得到一条消息,处理它并重复。
我尝试使用 basic_qos 一次让消费者预取 1,但这似乎根本没有效果。
基本设置和循环: // 一次设置 1 条消息的 qos if (!amqp_basic_qos(conn, channel, 0, 1, 0)) { die_on_amqp_error(amqp_get_rpc_reply(conn), "basic.qos"); }
我希望有一个队列被填满,我可以开始处理,如果我点击 ^C,剩余的消息仍在队列中。相反,即使我只处理了一条消息,整个队列也会被清空。
c++11 - RabbitMQ - SimpleAmqpClient - 我正在尝试将标头与我的消息一起发送,但标头没有被发送;我究竟做错了什么?
我正在使用以下内容:https ://github.com/alanxz/SimpleAmqpClient
我正在尝试将标头与我的消息一起发送,但标头没有被发送;我究竟做错了什么?
这是我的代码的样子。我有一个带有一些基本配置值的配置对象。
这会将消息发送到队列,我可以在 RabbitMq 管理门户上看到除标头之外的所有详细信息(AppID、类型、消息正文等)。
我错过了什么?它是一些配置还是它是什么?
如果有人能给我一个关于如何发送标头的基本教程的链接,我将不胜感激。
我被困住了。请帮忙。