`
bdk82924
  • 浏览: 564976 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

QPID学习

 
阅读更多
最近在看QPID
首先看下QPID是什么,他是个消息队列,用他有什么好处呢 ,可以跨平台使用,比如业务部分用C实现,把需要共享的信息通过QPID来传递,然后JAVA侧再从QPID接受消息


QPID官网:
http://qpid.apache.org/download.html

JAVA开发的话可以先在官网上下载一个 Java broker, client & tools  qpid-java-0.20.tar.gz [PGP] 

bin/qpid-server.bat 就可以启动

后面先研究如下几点

1、java开发服务端
    研究几点,点对点的消息 、广播消息

2、java开发客户端
    点对点消息的接收,接收后如何删除已经读取过的消息,使用 message.acknowledge()
    广播消息的接收
    消息格式的解析,一般采用字符串格式

3、qpid是否有tool可以看到当前的缓存情况
   可以使用 qpid-jmx-management-console-0.18-win32-win32-x86.zip 
   下载地址 :http://www.eu.apache.org/dist/qpid/0.18/
   

4、QPID的性能问题,比如一个缓存队列的最大记录数,qpid开启时候设置jdk的虚拟内存等等



表 1. AMQP 的几个概念
概念  描述 
Producer  A program that writes messages to an Exchange. To do this, the program creates a message, fills the message with content, gives the message a Routing Key, and sends the message to an Exchange. 
Routing Key  A string that the Exchangecan use to determine to which Queuesthe message should be delivered. 
Exchange  Accepts messages from Producersand routes them to Queuesif the message meets the criteria expressed in a binding. 
Binding  Defines the relationship between an Exchangeand a Queue, specifying which messages should be routed to a given Queue 
Queue  Holds messages and delivers them to the Consumersthat subscribe to the Queue. 
Consumer  A program that reads messages from a Queue. A Consumercan create, subscribe to, share, use, or destroy Queueand their Bindings(as long as it has have permission to do so). 


为了支持各种常见的通信模型,AMQP 定义了不同的 Exchange 类型,如下表所示 :


表 2. AMQP 定义的 Exchange 类型
Exchange 类型  路由行为 
Fan-Out  Messages are routed to every Queue bound to the Exchange, ignoring the Routing Key 
Direct  A message is routed only if a Queue's Binding Keyis the same as the message's Routing Key 
Topic  Similar to a Direct Exchange, but it supports multipart keys that contain multiple words separated by the "." delimiter; for instance, a message Producer can create messages with Routing Keys like usa.news, usa.weather, europe.news, and europe.weather. 

参考资料

消息中间件 Apache Qpid 简介,第 1-2 部分 
http://www.ibm.com/developerworks/cn/opensource/os-cn-qpid1/index.html
http://www.ibm.com/developerworks/cn/opensource/os-cn-qpid2/index.html


刚刚才开始研究! 等后面再补充吧




export PYTHONPATH=/usr/local/bin/qpid-tools-0.18/python/:/usr/local/bin/qpid-tools-0.18/src/py/
cd /usr/local/bin/qpid-tools-0.18/src/py/
./qpid-stat -q

qpidd --max-connections 2048 --auth no -d --log-to-file /var/log/mbus.log --log-enable warning+
  • 大小: 39.9 KB
分享到:
评论

相关推荐

    Qpid学习文档

    【Qpid学习文档】 Qpid是一款强大的开源消息中间件,旨在提供可靠且高效的跨平台通信解决方案。它实现了Advanced Message Queuing Protocol(AMQP),这是一个标准化的协议,允许不同语言和系统的应用程序之间进行...

    qpid安装步骤

    ### Qpid在Linux下的安装步骤及启动命令 #### 一、前言 Qpid是Apache基金会的一个项目,它提供了一个高性能、可靠的消息中间件服务,支持AMQP (Advanced ...希望这篇文章能够帮助到正在学习或使用Qpid的读者们。

    开源项目-bbqgophers-qpid.zip

    通过深入研究项目代码和文档,你可以学习到Go语言的实战应用、物联网设备的控制策略以及消息队列在实时系统中的作用。对于希望提升Go编程技能、涉足物联网领域或对DIY烧烤控制器感兴趣的开发者来说,这是一个非常有...

    PyPI 官网下载 | qpid-python-0.26.tar.gz

    它以其简洁明了的语法和强大的标准库而受到欢迎,广泛应用于Web开发、数据分析、机器学习、自动化等多个领域。Python的库生态系统非常丰富,PyPI作为其官方的第三方库仓库,提供了成千上万的扩展模块,如`qpid-...

    物联网学习篇1:Python SDK接入阿里云物联网平台,接收服务端订阅消息

    在本文中,我们将探讨如何使用Python SDK来接入阿里云物联网平台,从而实现接收服务端订阅的消息。...在后续的学习中,你可能会接触到设备注册、数据上报、规则引擎等更多高级功能,进一步提升你的物联网应用开发能力。

    proton-hawtdispatch-0.7.zip

    6. **构建与部署**:学习如何从源代码构建项目,配置构建工具(如Maven或Gradle)以依赖于这个Scala API,以及如何将构建的工件部署到实际环境中。 7. **社区支持**:作为开源项目,Proton-Hawtdispatch-0.7和...

    消息中间件的学习和概述

    AMQP的灵活性和可扩展性使其成为许多消息中间件产品如RabbitMQ、Apache Qpid等的基础。 在分布式系统中,性能指标QPS(Queries Per Second)和TPS(Transactions Per Second)是非常重要的。"qps和tps的区别.txt...

    JMS学习教程概述

    **JMS学习教程概述** Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的一种标准API。它允许应用程序创建、发送、接收和读取消息,为分布式系统提供了可靠的、跨平台的通信...

    C++连接activityMQ

    在本文中,我们将深入探讨如何使用C++连接到ActiveMQ,这是一个流行的开源消息代理和队列管理系统。ActiveMQ支持多种协议,包括AMQP、STOMP、XMPP等,使其能够与...记得在实践中不断学习和优化,以提升你的编程技能。

    jms学习文档

    Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的标准接口。它允许应用程序创建、...在学习过程中,不断实践和探索不同场景的应用,将有助于提升在企业级应用开发中的专业技能。

    linux-rdma.vger.kernel.org.0

    Linux RDMA(Remote Direct Memory Access)是Linux操作...通过分析这个压缩文件,开发者可以深入学习如何在Linux环境下利用RDMA技术优化网络通信,提高系统性能,并且可以参与社区贡献,修复问题,或开发新的功能。

    rabbitmq学习手册

    - **Apache Qpid**:支持多种编程语言,如C++、Ruby、Java等。 - **Redhat Enterprise MRG**:实现了最新的AMQP 0-10版本,并提供了丰富的功能。 - **RabbitMQ**:用Erlang语言编写,支持广泛的客户端,如Python...

    apache-camel-2.12.1.tar.gz

    7. **依赖包**:Camel依赖于许多其他的库,如Spring框架、Qpid(AMQP消息代理)等,这些依赖可能以JAR形式存在于`lib`目录下。 使用Apache Camel,开发人员可以轻松地集成各种系统,比如数据库、文件系统、Web服务...

    Jms的例子 不错的例子

    在JMS实现中,有多种提供商,如ActiveMQ、RabbitMQ和Apache Qpid等。每个提供商都有自己的API实现,但都遵循JMS规范,确保跨平台的兼容性。例如,使用ActiveMQ,我们需要导入相关的JMS库,并创建ConnectionFactory,...

    java消息服务(第二版)

    此外,读者还将学习如何在不同的JMS提供者上部署和管理消息服务,如ActiveMQ、RabbitMQ和Apache Qpid等。 通过阅读《Java消息服务(第二版)》,开发者不仅可以掌握JMS的基本用法,还能深入了解其在复杂分布式系统...

    TCE:轻型的Rpc通信引擎(Tiny Communication Engine) 为快速构建移动互联网提供助力,解决大规模接入、集群分派、接口路由、消息推送等服务

    TCETINY COMMUNICATION ENGINE开发tce是在学习zeroc代码之后产生的想法,原因在于 zeroc的rpc里面有很多我认为是比较累赘的东西,本想将其App.svelte,后来发现代码关联太紧,花时间去改造还不如自己实习一套。...

    Laravel开发-laravel-amqp-queue .zip

    常见的实现有RabbitMQ、Apache Qpid、ActiveMQ等。AMQP允许应用程序之间通过消息进行通信,这些消息可以是异步处理的,这样可以提高系统的并发性和容错性。 在Laravel中集成AMQP,首先需要安装laravel/amqp库,这...

    AMQPStorm-2.0.0-py2.py3-none-any.whl.zip

    6. **兼容性**:支持多种AMQP服务器,如RabbitMQ、Qpid等。 **使用说明.txt**: 这个文件很可能是关于如何安装和使用AMQPStorm库的指南,可能包含以下内容: - 安装步骤,通过`pip`安装`AMQPStorm-2.0.0-py2.py3-...

    详细讲解OpenStack3安装配置指南

    安装消息代理,如RabbitMQ或Qpid等,需要正确配置用户权限以及访问控制,确保消息能够安全、有效地在各个服务之间传递。整个安装配置过程中,用户需要关注各种参数的设置和各个服务的配置文件。 Red Hat OpenStack ...

    mt7601u-master.zip_The Master_ampq_season5vc

    标题中的“mt7601u-master.zip_The_Master_ampq_season5vc”可能是指一个与MT7601U无线网卡驱动相关的项目或软件的...对于开发者,尤其是对无线网卡驱动和分布式消息系统感兴趣的人员,这是一个学习和实践的好资源。

Global site tag (gtag.js) - Google Analytics