[发明专利]由Redis和MySQL实现的消息处理方法和设备有效
申请号: | 201811316816.X | 申请日: | 2018-11-07 |
公开(公告)号: | CN109445965B | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 付少波;喻波;王志海;董爱华;安鹏;董晓斌 | 申请(专利权)人: | 北京明朝万达科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F16/25;G06F16/28 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100097 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | redis mysql 实现 消息 处理 方法 设备 | ||
本发明提供了一种基于仅由Redis和MySQL这两种数据库实现的消息异步处理的方法和电子设备。所述方法包括:将所述产生的消息存储到Redis数据库的消息队列中;所述Redis数据库对所述消息队列进行预处理;所述应用系统从所述Redis数据库的消息队列中提消息;所述提取的消息保存到MySQL数据库中;所述应用系统调用消息处理接口处理消息;如果所述消息处理完成,则将MySQL中保存的所述提取的消息删除。本发明不仅可提供较高的消息响应速度,还具有较高的数据稳定性和安全性。
技术领域
本发明涉及数据处理领域,具体涉及一种基于仅由Redis和MySQL这两种数据库实现的消息处理方法和设备。
背景技术
在开源数据系统中,常用的有Redis、Memcached等。其中,Redis是一个key-value存储系统,与分布式的快取系统Memcached相比,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set--有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis支持各种不同方式的排序。与Memcached一样,为了保证效率,数据都是缓存在内存中。但区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。可见,Redis是一个具有更高性能的key-value数据库,很大程度补偿了Memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。
MySQL一种关系数据库管理系统,关系数据库将数据保存在不同的具有关联关系的表中,是建立在关系数据库模型基础上的数据库,其借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。
在数据处理领域,最常见的操作是请求-响应操作,请求通常是以消息的形式提供,处理消息有两种形式,一种是同步实时处理,另一种是异步非实时处理,对于前者,对请求的响应和处理时间要求极为严格,因而对系统的硬件处理能力有着更高的要求,从而导致其硬件成本昂贵,因而不适合被广泛应用。而异步消息处理方式由于不需要上述严格的时间限制,因而逐步发展为数据处理领域中最为常用的方式之一。在数据处理领域,主要是通过消息中间件实现消息的处理,主要如:(1)ActiveMQ支持JMS1.1和J2EE1.4规范的JMSProvider实现的消息中间件,(2)目前流行的RabbitMQ是基于erlang语言开发的开源消息队列系统,RabbitMQ采用AMQP(高级消息队列协议)的标准,(3)Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据,可以支持每秒数百万的消息,支持通过Kafka服务器和消费机集群来分区消息。另外,ActiveMQ、RabbitMQ采用发送者把消息发送给消息服务器,消息服务器对于消息做一定的包装与处理,消息服务器将消息存放在若干队列/主题中并通过设置的方式将消息持久化保障数据的可靠性,在合适的时候,消息服务器会将消息转发给接受者。在这个过程中,发送和接收是异步的,也就是消息发送后无需等待响应,而且发送者和接收者的生命周期也没有必然关系。
可见,现有技术的实现方案适用于大多数对于消息不作处理仅用于中间存储的系统使用,Kafka对于中间消息的处理性能没有问题,但是对于数据安全性以及可靠性高的系统而言则不太实用,ActiveMQ、RabbitMq数据安全性以及可靠性高,但是性能相比于Kafka存在一定的差距,并且现有技术的实现都需要在系统中添加独立的第三方软件应用,使得系统的复杂度更加复杂。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京明朝万达科技股份有限公司,未经北京明朝万达科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811316816.X/2.html,转载请声明来源钻瓜专利网。