CN113138921A - 一种信息查询验证方法 - Google Patents
一种信息查询验证方法 Download PDFInfo
- Publication number
- CN113138921A CN113138921A CN202110439337.2A CN202110439337A CN113138921A CN 113138921 A CN113138921 A CN 113138921A CN 202110439337 A CN202110439337 A CN 202110439337A CN 113138921 A CN113138921 A CN 113138921A
- Authority
- CN
- China
- Prior art keywords
- user
- message
- operation interface
- constructing
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012795 verification Methods 0.000 title claims abstract description 14
- 230000008569 process Effects 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000007246 mechanism Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008140 language development Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种信息查询验证方法,包括:基于RocketMqSampleGui构建用户操作界面,并基于用于操作界面获取用户输入的数据和相应的操作指令;基于RocketMqSample构建业务处理后台,用于基于用户操作界面的数据和相应的操作指令进行信息的发送或查询。本发明的有益效果为:通过采用RocketMqSampleGui创建自定义界面,用于接收用户输入的数据和操作,RocketMqSample处理业务逻辑:根据前端传的数据做消息的发送或消息的查询。实现在Jmeter中对RocketMQ的发送和查询方法,简单易用,返回结果json格式,易于阅读,方便自动化验证扩展性强,效率更高。
Description
技术领域
本发明属于消息查询技术领域,具体涉及一种信息查询验证方法。
背景技术
在现有技术中的当前操作MQ(消息队列)消息只能通过其后台默认的web系统进行相应的测试,测试过程中需要来回切换软件验证且不能形成一套自动化的流程形式,很大程度上浪费了业务验证过程中的工作效率。
发明内容
为了解决现有技术存在的操作繁琐、效率低等问题,本发明提供了一种信息查询验证方法,其具有操作简单、效率更高等特点。
根据本发明的具体实施方式的一种信息查询验证方法,包括:
基于RocketMqSampleGui构建用户操作界面,并基于所述操作界面获取用户输入的数据和相应的操作指令;
基于RocketMqSample构建业务处理后台,用于基于所述用户操作界面的数据和相应的操作指令进行信息的发送或查询。
进一步地,所述基于RocketMqSampleGui构建用户操作界面,并基于所述用于操作界面获取用户输入的数据和相应的操作指令包括:
在java项目里新建RocketMqSampleGui并继承AbstractSamplerGui;
新建RocketMqSample并继承AbstractSampler。
进一步地,所述基于RocketMqSample构建业务处理后台,用于基于所述用户操作界面的数据和相应的操作指令进行信息的发送或查询包括:
在service.properties中配置新建类的路径;
在RocketMqSample的sample方法中处理信息发送和根据关键字进行查询。
进一步地,所述用户输入的数据和相应的操作指令包括:
用户输入的MQ地址和主题。
进一步地,查询的方式包括根据消息标识查询消息体和根据消息关键字查询消息体。
本发明的有益效果为:通过采用RocketMqSampleGui创建自定义界面,用于接收用户输入的数据和操作,RocketMqSample处理业务逻辑:根据前端传的数据做消息的发送或消息的查询。实现在Jmeter中对RocketMQ的发送和查询方法,简单易用,返回结果json格式,易于阅读,方便自动化验证扩展性强,效率更高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例提供的一种信息查询验证方法的流程图;
图2是根据一示例性实施例提供的一种信息查询验证方法的另一流程图;
图3是根据一示例性实施例提供的操作界面的视图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
参照图1所示,本发明的实施例提供了一种信息查询验证方法,具体包括以下步骤:
101、基于RocketMqSampleGui构建用户操作界面,并基于操作界面获取用户输入的数据和相应的操作指令;
102、基于RocketMqSample构建业务处理后台,用于基于用户操作界面的数据和相应的操作指令进行信息的发送或查询。
具体的,通过使用Java语言开发,基于Jmeter源码进行自定义的java协议插件设计,实现了三种对RocketMQ的操作:消息发送、根据消息id查询消息体、根据消息key查询消息体。Jmeter:是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。Maven:Maven是最流行的Java项目构建系统,项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
其中ApacheRocketMQ是一个低延时、高性能、可靠、海量并且灵活扩展性的分布式消息和流平台。它由4个部分组成:name servers、brokers、producers、consumers。每个部分都能水平扩展防止单点故障。
Name servers提供轻量级的服务发现和路由功能。每个Name Server记录完整的路由信息,提供一致的读写服务并且支持快速的容量扩展。
Brokers关注消息存储通过轻量的TOPIC和QUEUE机制。它们支持Push和Pull模式,包含容错机制(2copies or 3copies),并且提供strong padding of peaks and capacityof accumulating hundreds of billion messages in their original time order.另外,Brokers提供灾难恢复、丰富的指标统计和警告机制,所有这些是传统的消息系统缺失的。
Producters支持分布式部署。分布式Producters通过多种负载均衡机制发送消息到Broker Cluster。发送进程支持快速失败并且低延时。
Consumers支持Push和Pull两种分布式部署模式。也支持集群消费和消息广播。它提供实时消息订阅机制并且满足大多数消费场景。
NameServer是一个全功能的服务器,包括有2个功能:
Broker管理:NameServer接受Broker cluster的注册,并且提供心跳机制检查broker是否alive。
路由管理:每个NameServer拥有broker cluster的完整路由信息和供客户端查询的队列信息。
Broker Server是消息存储、传递、消息查询、高可用等的可靠保证。
作为上述实施例可行的实现方式,参照图2所示
基于RocketMqSampleGui构建用户操作界面,并基于用于操作界面获取用户输入的数据和相应的操作指令包括:
在java项目里新建RocketMqSampleGui并继承AbstractSamplerGui;
新建RocketMqSample并继承AbstractSampler。
基于RocketMqSample构建业务处理后台,用于基于用户操作界面的数据和相应的操作指令进行信息的发送或查询包括:
在service.properties中配置新建类的路径;
在RocketMqSample的sample方法中处理信息发送和根据关键字进行查询。
发送消息的时候指定会指定topic,如果producer集合中没有会根据指定topic到namesrv获取topic发布信息TopicPublishInfo,并放入本地集合。
定时从namesrv更新topic路由信息。
消息发送流程主要步骤:验证消息、查找路由、消息发送;消息发送之前,首先确保生产者处于运行状态,然后主题名称、消息体不能为空、消息长度不能等于0且默认不能超过4M。如果生产者中缓存了topic的路由信息,且该路由信息中包含了消息队列,直接返回该路由信息。反之向NameServer查询该topic的路由信息。最终没有找到,会抛异常。消息批量发送的流程和上述单条消息流程一致。对于批量发送消息,要解决的消息的编码和解码问题。批量的消息也是存于body中。RocketMQ会对单条消息使用固定格式存储。方便服务端能正确解析出消息。并且针对异常,RocketMQ有重试与Broker规避机制。Broker规避就是在一次消息发送过程中发现错误,在某一时间段内,消息生产者不会选择该Broker(消息服务器)上的消息队列,提高发送消息的成功率。
参照图3所示的用户操作界面的结构,用户输入的数据和相应的操作指令包括:
用户输入MQ地址、Topic等,选择方法send,运行。
查询的方式包括根据消息标识查询消息体和根据消息关键字查询消息体。
消息查询时用户输入MQ地址、Topic、key等,选择方法searchByKey或searchById运行。
本发明上述实施例所提供的信息查询验证方法,Myb MQ Sampler直接对接RocketMQ的api,操作性能强简单易用,返回结果json格式,易于阅读,方便自动化验证,扩展性强。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (5)
1.一种信息查询验证方法,其特征在于,包括:
基于RocketMqSampleGui构建用户操作界面,并基于所述操作界面获取用户输入的数据和相应的操作指令;
基于RocketMqSample构建业务处理后台,用于基于所述用户操作界面的数据和相应的操作指令进行信息的发送或查询。
2.根据权利要求1所述的信息查询验证方法,其特征在于,所述基于RocketMqSampleGui构建用户操作界面,并基于所述用于操作界面获取用户输入的数据和相应的操作指令包括:
在java项目里新建RocketMqSampleGui并继承AbstractSamplerGui;
新建RocketMqSample并继承AbstractSampler。
3.根据权利要求2所述的信息查询验证方法,其特征在于,所述基于RocketMqSample构建业务处理后台,用于基于所述用户操作界面的数据和相应的操作指令进行信息的发送或查询包括:
在service.properties中配置新建类的路径;
在RocketMqSample的sample方法中处理信息发送和根据关键字进行查询。
4.根据权利要求1所述的信息查询验证方法,其特征在于,所述用户输入的数据和相应的操作指令包括:
用户输入的MQ地址和主题。
5.根据权利要求4所述的信息查询验证方法,其特征在于,查询的方式包括根据消息标识查询消息体和根据消息关键字查询消息体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110439337.2A CN113138921A (zh) | 2021-04-23 | 2021-04-23 | 一种信息查询验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110439337.2A CN113138921A (zh) | 2021-04-23 | 2021-04-23 | 一种信息查询验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113138921A true CN113138921A (zh) | 2021-07-20 |
Family
ID=76813418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110439337.2A Pending CN113138921A (zh) | 2021-04-23 | 2021-04-23 | 一种信息查询验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113138921A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090063418A1 (en) * | 2007-08-31 | 2009-03-05 | Jonathan Robie | Method and an apparatus to deliver messages between applications |
CN106383896A (zh) * | 2016-09-28 | 2017-02-08 | 浪潮软件集团有限公司 | 一种基于爬虫+RocketMQ的数据抓取分发方法 |
CN107590072A (zh) * | 2017-08-30 | 2018-01-16 | 深圳乐信软件技术有限公司 | 一种应用开发和测试的方法和装置 |
-
2021
- 2021-04-23 CN CN202110439337.2A patent/CN113138921A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090063418A1 (en) * | 2007-08-31 | 2009-03-05 | Jonathan Robie | Method and an apparatus to deliver messages between applications |
CN106383896A (zh) * | 2016-09-28 | 2017-02-08 | 浪潮软件集团有限公司 | 一种基于爬虫+RocketMQ的数据抓取分发方法 |
CN107590072A (zh) * | 2017-08-30 | 2018-01-16 | 深圳乐信软件技术有限公司 | 一种应用开发和测试的方法和装置 |
Non-Patent Citations (3)
Title |
---|
S-GAVIN: "基于Jmeter实现Rocketmq消息发送", pages 1 - 6, Retrieved from the Internet <URL:https://www.cnblogs.com/zwh-Seeking/articles/14276108.html> * |
小熊餐馆: "rocketmq学习(二) rocketmq集群部署与图形化控制台安装", pages 1 - 9, Retrieved from the Internet <URL:https://www.cnblogs.com/xiaoxiongcanguan/p/11579300.html> * |
阿里云云栖号: "消息队列RocketMQ性能测试案例", pages 1 - 10, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/333262364> * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8195757B2 (en) | Method, apparatus and computer program for controlling retention of publications | |
Fernandes et al. | Performance evaluation of RESTful web services and AMQP protocol | |
US8104044B1 (en) | System and method for client-side widget communication | |
US9880982B2 (en) | System and method for rendering presentation pages based on locality | |
JP4934670B2 (ja) | 信頼度の低いネットワーク上で状況に基づくルールを用いてトランザクションおよびデータを切り替えるように適合されたゲートウェイ | |
US8452925B2 (en) | System, method and computer program product for automatically updating content in a cache | |
CN112925661B (zh) | 消息处理方法、装置、计算机设备及存储介质 | |
US20110060890A1 (en) | Stream data generating method, stream data generating device and a recording medium storing stream data generating program | |
US10592314B2 (en) | Message queueing in middleware by a message broker | |
CN111913818A (zh) | 一种确定服务间依赖关系的方法及相关装置 | |
US7734723B2 (en) | Deferred handling of a message | |
US20060031572A1 (en) | Event broker | |
KR20080106568A (ko) | 메시지들을 수집하는 컴퓨터화된 방법 및 애플리케이션에 대한 메시지들을 수집하기 위한 시스템 | |
CN110968438A (zh) | 事件消息异步通知方法、装置、电子设备、存储介质 | |
WO2009032108A1 (en) | A method and an apparatus to deliver messages between applications | |
CN111026931A (zh) | 一种数据查询方法、装置、设备及介质 | |
CN111562885A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN110955857A (zh) | 一种用于高并发环境的业务处理方法及装置 | |
CN114356921A (zh) | 数据处理方法、装置、服务器及存储介质 | |
CN111367873A (zh) | 日志数据的存储方法、装置、终端及计算机存储介质 | |
CN112689248A (zh) | 一种消息处理方法及系统 | |
CN111984849A (zh) | 一种信息查询方法、装置、设备及介质 | |
CN111510330B (zh) | 接口管理装置、方法及存储介质 | |
US7490183B2 (en) | Information kit integration architecture for end-user systems | |
CN113138921A (zh) | 一种信息查询验证方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |